New call-to-action
Results 1 to 5 of 5

Thread: Custom Validation and/or Field Rule Event

  1. #1
    Gary Roussie
    Guest

    Default Custom Validation and/or Field Rule Event

    In the application I have created, two of the fields are as follows:
    ADMITTED and DP1. Sequentially, ADMITTED comes before DP1 in the Tab Order of the Application. Both are CHARACTER fields.

    ADMITTED has only two choices, "YES" and "NO". It is a user entered field and not a logical one. The value put into DP1 is an alphanumeric code. It will begin with either "R" or "I".
    If the response to ADMITTED is "YES", then the value for DP1 must begin with "R". If it is "NO", then the value must begin with "I".

    I want to create a custom validation or field event rule that checks the code entered into DP1 to make sure it is correct (i.e. if ADMITTED is "YES", then DP1 must begin with "R", etc.) I have tried using the following script in the "CAN WRITE FIELD" Event for DP1 in hopes that it will check the code:

    if ADMITTED="NO".AND.LEFT(DEP_CHRG_1,1)="R" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS NO--DP1 SHOULD BE AN I CHARGE",48)
    else if ADMITTED="YES".AND.LEFT(DEP_CHRG_1,1)="I" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS YES--DP1 SHOULD BE AN R CHARGE",48)
    else
    end if

    The code compiles fine but does not do what I want it to. I have tried similar solutions using the Custom Validations field rule but also with no success.

    What am I doing wrong?

  2. #2
    "Certified" Alphaholic
    Real Name
    Cal Locklin
    Join Date
    Mar 2000
    Location
    S.E. Michigan
    Posts
    5,763

    Default RE: Custom Validation and/or Field Rule Event

    The following assumes that DEP_CHRG_1 (not DP1) is the name of the field that the field rule is attached to.

    Question: If you haven't written the field, isn't the value of the field blank?
    Answer: Yes.
    BUT, there is a solution... A5 stores the new value you typed in a shared field called A_Field_Value. So, change your script to:

    DIM SHARED a_field_value as c
    if ADMITTED="NO".AND.LEFT(a_field_value,1)="R" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS NO--DP1 SHOULD BE AN I CHARGE",48)
    A_can_do = "F"
    else if ADMITTED="YES".AND.LEFT(a_field_value,1)="I" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS YES--DP1 SHOULD BE AN R CHARGE",48)
    A_can_do = "F"
    end if

    Notes:
    - I'm not sure if the DIM statement is required but it's definitely a good idea.
    - Add the lines with a_can_do to stop the write operation from occurring.
    - I deleted the 'else' line from the script. It doesn't hurt but isn't needed.

  3. #3
    Gary Roussie
    Guest

    Default RE: Custom Validation and/or Field Rule Event

    Cal,

    DP1 is actually Dep_Chrg_1. Still there is a problem. Here is what I now typed in under the Can Write portion of the field event:

    DIM SHARED A_field_value as c
    if P3A->ADMITTED="NO".AND.LEFT(P3A->DEP_CHRG_1,1)="R" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS NO--DEP_CHRG_1 SHOULD BE AN I
    CHARGE",48)
    A_can_do="F"
    else if P3A->ADMITTED="YES".AND.LEFT(P3A->DEP_CHRG_1,1)="I" [then]
    ui_msg_box("ERROR","ADMITTED VALUE IS YES--DEP_CHRG_1 SHOULD BE AN R
    CHARGE",48)
    A_can_do="F"
    end if

    When I try to compile this, I get an error at Line 3, column 1 String constant is incomplete. I have tried different solutions for Line 3, column 1 but still cannot get it to work. Any ideas?

    Also, I checked out the XBasic reference book for A5,v1 and I cannot find the A_can_do function in it. Is that for a later version of A5 which doesn't work for v1?

    Thanx for your help.

    Gary

  4. #4
    "Certified" Alphaholic
    Real Name
    Cal Locklin
    Join Date
    Mar 2000
    Location
    S.E. Michigan
    Posts
    5,763

    Default RE: Custom Validation and/or Field Rule Event

    I cut and pasted your script to my script editor and it compiled OK after I combined the lines so the ui_msg_box() was all on one line. I presume the split lines were just from posting on this board but I don't see any other problem.

    To find a_can_do, open A5v1, click Help, click Functions, click Search, type the letter "A". You will see A_CAN_DO about 3 items down.

  5. #5
    Gary Roussie
    Guest

    Default RE: Custom Validation and/or Field Rule Event

    Cal,

    Thanx a bunch. It works great. This will really help out with our paperwork and reducing errors.

    Gary

Similar Threads

  1. Field Rule Event Problem
    By Ronald Anusiewicz in forum Alpha Five Version 4
    Replies: 8
    Last Post: 08-18-2011, 03:32 AM
  2. Custom validation on a date field won't work
    By brett s in forum Alpha Five Version 5
    Replies: 12
    Last Post: 10-27-2004, 08:01 PM
  3. Field Rule Unique Validation is not working
    By Dennis Mathias in forum Alpha Five Version 4
    Replies: 4
    Last Post: 08-08-2002, 10:27 AM
  4. event field rule
    By Edward F. Schulz in forum Alpha Five Version 4
    Replies: 7
    Last Post: 06-09-2002, 11:52 AM
  5. validation field rule
    By Becky McNichols in forum Alpha Five Version 4
    Replies: 5
    Last Post: 02-03-2002, 05:58 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •