How to validate field on subform from main form?

ChowdaryChowdary Member Posts: 148
Hi All

I got to validate a field on the Service Order subform when I validate Assigned userID field on the Service Order form. I have used CurrForm.ServItemLines.FORM.Update(); and it's working but didn't solve my problem, meaning I am not getting the effect as I am getting with manual validation on subform. The main requirement is when I manually validate Assigned userID on the main form some code is executed and created Service Header record some where in the system and like wise Service Item Line record for manual validation on the subform. But I need to skip manual validation on the subform and when I validate Assigned user ID on the main form it should first validate and create Service Header record and then it shud validate subform (with no manual validation) and create Service Item Line record.

Hope I made it clear, please share ideas

Thank You everyone
Chowdary
Pleasure in the job puts perfection in the work

Comments

  • lvanvugtlvanvugt Member Posts: 774
    Hope I am getting it right, Chowdary.

    So I guess you are writing code to get this done. Validating any field is done by using the VALIDATE method.

    Calling CurrForm.ServItemLines.FORM.Update() will only update and not validate. So you have to write code that explicitly will validate the relevant fields on the service item line table. Typically the statement would be
    ServiceItemLine.VALIDATE(<field name>,<new field value>);
    
    Luc van Vugt, fluxxus.nl
    Never stop learning
    Van Vugt's dynamiXs
    Dutch Dynamics Community
  • ChowdaryChowdary Member Posts: 148
    lvanvugt wrote:
    Hope I am getting it right, Chowdary.

    So I guess you are writing code to get this done. Validating any field is done by using the VALIDATE method.

    Calling CurrForm.ServItemLines.FORM.Update() will only update and not validate. So you have to write code that explicitly will validate the relevant fields on the service item line table. Typically the statement would be
    ServiceItemLine.VALIDATE(<field name>,<new field value>);
    

    Thanks for the response lvanvugt

    I have tried VALIDATE too, but my requirement is related to change log entry. Until unless I went to subform and change the value manually the change is not effecting. Is there amy way to replace manual functionality with code?

    Thank You
    Pleasure in the job puts perfection in the work
  • AjageaviKeshariAjageaviKeshari Member Posts: 5
    Hi,

    You have to write a Function in Subform like Fct_UpdateCtrl()
    //In Subform
    Fct_UpdateCtrl()
    {
    CurrForm.UPDATE;
    }

    and call this method from Onvalidate() of Header Form Field Assigned user
    CurrForm.SubForm.FORM.Fct_UpdateCtrl;

    It will work as manuall

    Thanks & Regards
    Ajageavi Nath Keshari
  • ChowdaryChowdary Member Posts: 148
    Hi,

    You have to write a Function in Subform like Fct_UpdateCtrl()
    //In Subform
    Fct_UpdateCtrl()
    {
    CurrForm.UPDATE;
    }

    and call this method from Onvalidate() of Header Form Field Assigned user
    CurrForm.SubForm.FORM.Fct_UpdateCtrl;

    It will work as manuall

    Hi AjageaviKeshari

    Thanks for the response, the solution you provided was tried before posting here. If you can see on this post I have mensioned that.
    But, I have found a link that suits my requirement
    http://jeremy.vyska.info/2011/04/cal-mo ... ge-log/144

    This is creating the line on the changelog from Service Order subform, I'm working basis of this link. If anyone has any ideas please let me know. I will update as soon as I get resolved with this issue

    Thank YOu
    Pleasure in the job puts perfection in the work
Sign In or Register to comment.