Flow conditions executes TRUE, not FALSE - boolean

CONTEXT
Created small ticket submission system for a personnel office. Created ability to submit ticket on behalf of another user, such as by a supervisor. Needed one column "CUSTOMER EMAIL" to fill with the email from the actual customer so the system would have one column by which to email the customer.
If SUBMITTED FOR is full, CUSTOMER EMAIL should have SUBMITTED FOR EMAIL.
If SUBMITTED FOR is empty, CUSTOMER EMAIL should have CREATED BY EMAIL.
FLOW
PART 1 (Works fine)
TRIGGER: Update item/File
CONDITION: TICKET ID column field is modified
FLOW PART 2 (Problem)
CONDITION:
"Has Column Changed: Submitted for" IS EQUAL TO "Has Column Changed: Submitted for"
Also Tried
"Has Column Changed: Submitted for" IS EQUAL TO fx: TRUE
Boolean:::
YES
UPDATE ITEM:
CUSTOMER EMAIL (col) with SUBMITTED FOR EMAIL (field)
NO
UPDATE ITEM:
CUSTOMER EMAIL (col) with CREATED BY EMAIL (field)
The FLOW TEST says it works, but when FALSE, doesn't execute the NO "UPDATE ITEM".
Please help!

Found the problem:
In 2nd condition, was using "Has Column Changed:Submitted For" IS EQUAL TO fx:NULL.
But the value IS updated, even if the value is null, which produces a false positive.
Changed it to: "Submitted for" IS EQUAL TO fx:NULL.
My ignorance on difference between "Has changed" vs is the cell empty or not?

Related

automatic email on formsubmit

Whenever a form is submitted I want an automated(professional-looking) email to be sent to the customer in the following format attached to this post. [![sample screenshot]
(https://i.stack.imgur.com/aoZC8.jpg)](https://i.stack.imgur.com/aoZC8.jpg)
Also, there are many fields that the customer won't fill while filling the form. So they will be left blank. As Shown in sheet named "Form responses 1" of the spreadsheet shared with this post.
In the "Order Sheet". I have managed to apply the formulas and removed the blank spaces and also made more columns like order total and quantity total. These formulas are dependent on the "form responses 1" sheet and "price list" sheet.
I madea separate sheet "order sheet" So that the "order sheet" looks clean to see . as it is a sample spreadsheet only. So that is why data is less. Otherwise if I dont make the "order sheet". and only reply on the "form response 1" sheet. then it would be very hard to understand what has been ordered or not.
So email should be sent on form submit but as per the columns of "Order Sheet" of the sample spreadsheet.
Also you can see in the "order sheet" that not every customer has ordered the same thing. So how can I make this dynamic in my email .
Also I tried some addons but it doesnt give desired result. As i think script is more powerfull and we can do almost anything with it.
Hope you understood the problem
Link to the spreadsheet sample is
https://docs.google.com/spreadsheets/d/1eS3B9uYi3PRnuxdvUn-R2j-hy6TabvEYtCrGXnwYEJ4/edit#gid=609615747
As I am new to this appscript. But watched some tutorial and here and there read forrums but couldnt get the full outcome which I want.

How to send email with the list of all people - Power Automate

There are some tutorials that explain how to email someone on their birthday. What I am looking for is to send a single email with the list of all the people who celebrate their birthday that day.
I would like to know how I can send in the body of the email the name of the people who celebrate their birthday on that day.
I have been working on a flow with each of the following steps:
Recurrence:
With this step I send my daily mail every certain hour.
Get items:
I created a sharepoint list where I have the name of the birthday boy, date of birthday (DOB), gender and department.
Initialize variable:
Apply to each
Append to string variable
I add to the Birthdays variable the value that would be the name of the employee whose birthday is that day that is in the sharepoint list
Send an email
In the step of sending an email, I add the previously initialized variable "Birthdays" to the body of the email, which should contain the list of employees whose birthday is that day
I have supported myself with this question made in the Microsoft Power Automate forum but it does not work as it should since I am new to power automate
Error:
At the moment of executing my manual flow I get in the condition as a result false in addition to two errors when I add the variable and send the mail
Can someone give me an orientation in knowing what I am doing wrong in the flow since my mail does not arrive either.
UPDATE:
The value of the Birthdays variable at runtime is as follows:
UPDATE 2:
I have added in Filter Query the following expression formatDateTime(utcNow(),'dd-MM-yyyy') eq 'listColumn' but when executing the manual flow I get that The expression "28-01-2022 eq 'listColumn'" does not It is valid.
Annex error that shows me in the execution of the manual test
UPDATE 3:
The column in the sharepoint list where I am storing the birthday date is called DOB:
Get Items action you should use Filter Query row to search something like: formatDateTime(utcNow(),'dd-MM-yyyy') eq 'listColumn'.(You should have a column in sharepoint containing all user birthdays).
[1]: https://i.stack.imgur.com/Y3s4S.png
Append to String all the emails that you get from GetItems: Email;
Try this one; it should work:
Birthdays eq '#{formatDateTime(utcNow(), 'yyyy-MM-dd')}'

Calculate Date Field in SharePoint Online

I'm trying to calculate a due date field based on two other fields in a SharePoint Online list: [Created] and [Priority]. [Created] is auto-populated when the user creates the new list item. Easy enough. The user selects a [Priority] (Critical, High, Medium, Low). My formula always results in an error due to the pre-populated date field. Surely there's a way around this that I'm just ignorant of. It works fine in Excel, but SP pukes when I try it. TIA!
=IF([Priority]="Critical",[Created]+1,IF([Priority]="High",[Created]+3,IF([Priority]="Medium",[Created]+7,[Created]+14)))
Per my test, it works well in my SharePoint list.
1.Create a choice column named "Priority".
2.Create a calculated column, set "The data type returned from this formula is" as "Date and Time", set "Date and Time Format" as "Date Only".
=IF([Priority]="Critical",[Created]+1,IF([Priority]="High",[Created]+3,IF([Priority]="Medium",[Created]+7,[Created]+14)))
3.Result:

Crystal Reports - Running Total is duplicating if a group has more than 1 "detail"

I have a report that I am trying to get working in Crystal. Basically the report is about gifts (I work for a non-profit). I grouped the report by Payment Method, and then Gift ID, which is a unique field in the .MDB file used to fuel the report.
I want to keep gifts with the same payment method together, which is why I first grouped by that. Then I grouped by Gift ID. the "Details" of my report is a field called Soft Credit Donor, which will list out as many donors that were given soft credit on the gift. There could be 0, there could be multiple...I show running totals in the Report Footer. I have a Gift Count (a Distinct Count of Gift ID, evaluating on each record, resetting Never), a Sum of all Gifts (a sum of Gift Amount, evaluating on Change of Field - Gift ID, resetting Never). These 2 fields work fine.
Then I get to where I want a running total based on each Payment Method. I am able to easily show the # of gifts per payment method. I do this with 4 separate running total fields (one for each payment method). I am doing a Distinct Count on GIft ID, evaluating on a formula (payment_method = "Business Check", "Personal Check", "Credit Card", etc...and Resetting Never.
My issue is when I try to do a $$ total for each payment method. In this case I am seeing that my running total is duplicating if there is more than 1 "detail" or soft credit donor. My running total field is doing a sum of the Gift Amount field, evaluating on a formula (payment_method = "business check", etc...), and I've played around with the Resetting. If I choose Resetting Never, then I am seeing the money being double or triple, etc...counted. Depending on if gift has more than 1 "detail". If I choose to reset on change of field and I set that to either Payment_Method or GiftID, I get a blank running total.
One thing to mention is that my MDB file has multiple tables that are all left outer joined to the main table which holds the Gift ID and Payment method fields. So there is a Soft_Credit table that holds the Gift ID field, along with the each name of the Donor who gets a soft credit. I'm not sure if that matters or not.
I'd appreciate any help!
You can put this in a formula:
If {payment_method} = "Credit Card" Then 1 Else 0
Use this formula as sum in the running total.
Use "on change" on the id field.
User "never reset" for the total sum.
You have to create one formula and one running total for each payment method.

Crystal Reports - Returning next value in column

Need some help on crystal reports:
We are currently using crystal reports at work to generate confirmation papers to internal counterparties.
These confirmations are automatically triggered by our system when we set the interest rate on a specific deal.
The parameters that are sent from our external system are "deal number" and "action number". This information is passed on from the "events" database table, containing following columns:
The confirmation generated by performing the rate set contains specific information regarding interest payments we expect from counterparties.
So this confirmation generated has unique parameters, being the rateset "action number" and "deal number" from events table (see attached).
Now in this confirmation, we also want to make a reference to the "Next RateSet" date.
We tried to solve this by inserting an SQL statement to:
select top (1) effective date from events table where the
comments=rate set and where the action no = 0
This logic however does not hold up when we have to generate backdated confirmations.
So in theory, I would like to perform a select statement where I select the first record where the "event no" is larger than the "event no" from the current generated confirmation.
I'm not sure how to perform this though, as I've read it's not possible to use a crystal parameter in the SQL selection.
Any suggestions?
One option is to add the table a 2nd time to the report.
Crystal would assign an Alias to the 2nd instance by adding a number to the table name.
To make things more intuitive, change that alias to something like 'NextRateSet'.
Join the Events table to its alias on:
Events.Dealno = NextRateSet.Dealno AND
Events.EffectiveDate < NextRateSet.EffectiveDate
Add record selection criteria of:
NextRateSet.ActionNo = 0
Group the report on Events.DealNo and Sort it Descending by NextRateSet.EffectiveDate.
Suppress the detail section and move everything to the Group Footer.
Since the Group footer shows the last record in the group, it would show the earliest NextRateSet.EffectiveDate. And since that alias is restricted to EffectiveDates following the Events.EffectiveDate, you get the correct date.