• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 206
  • Last Modified:

Status not updated in a field and error not repeatable

Now, i have to find a possible cause of error for the following piece of code:

@If(CMRStatus = "Business Input/Review Required" & CurrentStatus != CMRStatus; @Do(@MailSend(CreatedBy; ""; ""; "CR #" + CMRNo + " requires some additional Business Input/Review in the FS Destination database" ; "" ; "This change request for the " + Project +
 " project is either ready for your review or requires your additional input.  Follow this link for further details" +" ==>  "; [IncludeDoclink]);
@SetField("CurrentStatus"; CMRStatus); @PostedCommand([FileSave]));
CMRStatus = "Business Review Complete" & CurrentStatus != CMRStatus;
@Do(@MailSend("Rabinder X Kaur"; ""; ""; "CR #" + CMRNo + " has been updated by Business in the FS Destination database" ; "" ;
"This change request for the " + Project + " project has been updated by Business.  Follow this link for further details" +" ==>  "; [IncludeDoclink]);
@SetField("CurrentStatus"; CMRStatus); @PostedCommand([FileSave]));
CMRStatus = "Complete" & CurrentStatus != CMRStatus; @Do(@MailSend("Rabinder X Kaur"; ""; ""; "CR #" + CMRNo + " has been completed in the
FS Destination database" ; "" ; "This change request for the " + Project + " project has been completed.  Follow this link for further details" +" ==>  "; [IncludeDoclink]);
@SetField("CurrentStatus"; CMRStatus); @PostedCommand([FileSave]));"");
@PostedCommand([FileCloseWindow])


I tried recreating the error but i dont get it. therefore, it may have occured because-
1) if there are any replicas- the changes did not get replicated.
2) someone changed the status back to Build.
3) dont know!!!


Error as observed was:
I got this automated message that says this request has been completed, but when I go to the database, it is still listed in build with no comments.
0
puneetfred
Asked:
puneetfred
1 Solution
 
marilyngCommented:
puneetfred;

Think the problem is the IF comparison.  You never really set the value of CMR status, and you need to declare the field before you use the @setfield statement.

Try this:
Field CurrentStatus :=CurrentStatus;
Status1="Business Input/Review Required";
Status2 ="Business Review Complete";
Status3="Complete";

@If(!@contains(CurrentStatus;Status1: Status2:Status3);
        @Do(
                     @MailSend(CreatedBy; ""; ""; "CR #" + CMRNo + " requires some additional Business Input/Review in the FS Destination database" ; "" ; "This change request for the " + Project +  " project is either ready for your review or requires your additional input.  Follow this link for further details" +" ==>  "; [IncludeDoclink]);
          @SetField("CurrentStatus"; Status1)          
                    );

      CurrentStatus= Status1;

    @Do(
               @MailSend("Rabinder X Kaur"; ""; ""; "CR #" + CMRNo + " has been updated by Business in the FS Destination
database" ; "" ; "This change request for the " + Project + " project has been updated by Business.  Follow this link
for further details" +" ==>  "; [IncludeDoclink]);    
            @SetField("CurrentStatus"; Status2)      
             );

             CurrentStatus = Status2;

             @Do(
                   @MailSend("Rabinder X Kaur"; ""; ""; "CR #" + CMRNo + " has been completed in the FS Destination database" ; "" ; "This change request for the " + Project + " project has been completed.  Follow this link for further details" +" ==>  "; [IncludeDoclink]);
                     @SetField("CurrentStatus"; Status3)              
                     );
"");

@PostedCommand([FileSave]);
@PostedCommand([FileCloseWindow])

See if it works for you,

Marilyng
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now