System Architect Essentials (8) Capstone exercise - Unable to get some field edits and screen formatting to work
This is actually for System Architect Essentials version 8, not 7.2. Version 8 isn't in the drop down list yet.
I can't find where to do the following items for the capstone exercise, or they don't work as advertised. Has anyone been able to get them to work yet?
US-107: As a customer, I want to make sure I provide the correct and required customer information so that I can ensure my rental reservation information is accurate.
All but the following works as specified.
Add the following validation to the Collect Customer Information step:
Password field must be at least eight characters long Does not work at all.
Customer must be at least 25 years of age as of today Does not work at all.
Cannot figure out how to do the following:
In Dev Studio, open the section for the Collect Customer Information step. Access the cell properties of each field to configure required and minimum length settings. Did this differently. Required attributes worked, minimum length did not.
On the Expiration Date and Date of Birth properties apply the IsFutureDate and NotFutureDate edit validate rules respectively Did this differently. It results in the same functionality; cannot find these rules in any list.
Use the following date function in a validation rule to check for customer age:
@DateTimeDifference([DateofBirthProperty]+"T000000.000 GMT",@(Pega-RULES:DateTime).CurrentDateTime(),"Y")<25 Cannot figure out how to do this at all; cannot find where to configure this.
US-108: As a New Accounts Representative, I want to be able to approve or reject new accounts based on the driver license information of the applicant, so that approved customers have a valid driver license.
Configure a view to display the Collect Customer Information step as read-only. Works as specified, except for one detail: Cannot get the password field to be masked, despite the fact that it is masked in the read/write version and I am using the exact same view except for the read-only attribute. The checkbox to obfusticate the field is checked, but it doesn't do it.
Might be easier if we just set up a screen share session. Please send an email to SelfStudySupport@pega.com and let me know some times that work for you in the next couple of days. Please include timezone information.
Hi Sean. I was able to obfuscate the password field on the read-only version of the screen when I discovered that the control type for read-only is configured separately from the control for read/write. It seems like "always scroll down, even if it doesn't look like there is anything more" is a good practice with Dev Studio.
I found how to enter the IsFutureDate and NotFutureDate edit validate rules. You have to go into Dev Studio through App --> Data Model --> Property --> [open however many levels it takes to select on the property in question] --> Advanced Tab --> Use Validate field. However, I still can't find a place where I can enter the following supplied date function in a validation rule to check for customer age: @DateTimeDifference([DateofBirthProperty]+"T000000.000 GMT",@(Pega-RULES:DateTime).CurrentDateTime(),"Y")<25 . I tried inserting it into the Authenticate Existing Customer process in the connector right after the Collect Customer Information step, since the course had an example that validated something that way. However, that didn't work either. When I open the flow action of the connector, I can see a validation tab, but I have been unable to figure out how to put that function into it. Do I need to create something somewhere? The file attachment below (20190405 Driver ....) shows the path I took. Do I need to create a rule someplace else, so that I can reference it here? Any other suggestions?
After seeing solution build instructions and doing some experimentation, I've discovered that there is something key for the "Driver at least 25" validation that is missing. In the expression to put into the "If field, one needs to reference the Date of Birth field as ".RentalCustomer.PersonalInformation.DateOfBirth". Note the three levels. The technical guidance implies that only one level needs to be done, and the solution I've received separately only contains ".RentalCustomer.DateOfBirth". Either of those results in a fatal save error.
Also, where can I find a guide to all of the "@" functions available for use in expressions, in this case @DateTimeDifference and the .CurrentDateTime() attribute of @(Pega-RULES:DateTime)? I'm sure there's a listing somewhere.
I am doing the exercise, too. And this is how I solved that checking for customer age, after 3 hours looking around and asking for help:
1. Go to Case types, open Rental Reservation
2. Configure process for the Create New Customer process in Identify Customer stage (This will open the diagram for the process)
3. Click Open process button on the top right.
4. Right click on the Collect Customer Information arrow, choose Open Flow Action
5. Go to tab Validation
6. Name the validation anything you like in the Validate text box (I did "CustomerAtLeast25".)
7. Click the crosshair icon next to the text box, then click Create and open
8. In the Property field enter the property base on what you named it (Example: ".RentalCustomer.PersonalInformation.DateOfBirth")
9. Click Add under the Conditions
10. In the new pop-up, check both the Required and Enable conditions; Choose "[expression evaluates to true]" for the Select a function field
11. In the new text field appear, enter something like this (based on your property's name): "@DateTimeDifference(.RentalCustomer.PersonalInformation.DateOfBirth+"T000000.000 GMT",@(Pega-RULES:DateTime).CurrentDateTime(),"Y")<25"
12. Enter a message in the Message field (Example: "Customers must be at least 25."); the Continue validation check box should be checked.
13. Click Submit
14. Save the validation, then close it
15. Save the Flow Action: Collect Customer Information, then close it
16. Save the Flow: Create New Customer, then close it
17. Test it, then you are done.
I tried to be very detailed, so there seems to be many steps; but you can actually do that very quickly. Hope this solution works for you.