Documentum FormsBuider. Transfer data between two forms

AndriyScreen
AndriyScreen Member
edited April 22, 2014 in Documentum #1

Hello dear Documentum colleagues!


Question about transfer the value from one form to another (in one process).


So, I have two forms in one process.


1) In first form I set the Process Variable “Operator_Status” (In DropBox executed adaptor, which perform:

select DSS_CODE from ddt_dict where folder(“Certain Folder”)


2) in second form I want to show in text_field the value, which user checked in first form, but another one field of table "ddt_dict" - DSS_VALUE.

That’s why I should set adaptor to text_field

select DSS_VALUE from ddt_dict where DSS_CODE=’${param}’, 


where param – I have set in “Special -> Execute adaptor when form initializes -> Input Binding” = variable “Operator_Status” from 1-st form) . Also I have tried to execute adaptor in "General -> Data&storage -> Use adaptors" with the same outcome.

textfield.bmp

As you can see in scrsht - "Data binding" field is referenced to variable "status1000" - it is empty string variable, which is never used in current form.

As I know i can't create control, which will not refferenced to some variable and it is strange for me, that I can't fill control (text_field) after I execute the dql in adaptor.



My approach doesn’t work. The text_field in 2-nd form is empty. Please clarify what I do wrong. I’m beginner in xCP. Maybe I lost sth.

Comments

  • AndriyScreen
    AndriyScreen Member
    edited April 19, 2014 #2

    test

  • Koen_Verheyen
    Koen_Verheyen Member
    edited April 22, 2014 #3

    You don't show the adapter configuration. But maybe you didn't configure well the parameter.

    The input parameter must have the same name as the text between ${ and  }.

    So if your query is "select DSS_VALUE from ddt_dict where DSS_CODE=’${param}’" then your input parameter should be "param", and not param_operator_status.

    So either change the query, or change the parameter. And know that adapter caching can be very tricky. So make sure that you are looking at the latest version of your form.

  • AndriyScreen
    AndriyScreen Member
    edited April 22, 2014 #4

    Thank You, Koen!

    I've just use name 'param' for contraction. In real the parameter is param_operator_status

    tmpADAPTOR.jpg

    tmpADAPTOR1.jpg

    I think the problem can be in DataBinding value, cause I use for it the random unneeded variable from "Process variables"...maybe I can't store the adaptor (dql) result to it.

    My next attempt: 1) to create once more process variable Var1

                            2) In 1-st form I will create temporary hidden control (text_field) - bind with Var1 and store to it the "Display value" from control - (in which I set the main process variable "Operator_status") *look to the next scrsht

                            3) than I will show this variable in 2-nd form.

    tmpADAPTOR2.jpg

    AllCodeValuesFromSubDirectory

    select dss_code, dss_value from ddt_simple_directory where FOLDER('/Aval Bank/Directory/Simple Directory/${dir_name}/${sub_dir_name}') order by dss_value

  • Koen_Verheyen
    Koen_Verheyen Member
    edited April 22, 2014 #5

    Another Tip.

    Set the Form Logging on, and then you can see the result of the adaptor.

    It is very useful in determining problems with Adaptors..

    log4j.logger.com.documentum.xforms.adaptor=DEBUG, ADAPTORS

    log4j.appender.ADAPTORS=org.apache.log4j.RollingFileAppender

    log4j.appender.ADAPTORS.File=${user.dir}/documentum/logs/formsadaptorlog.log

    log4j.appender.ADAPTORS.MaxFileSize=10MB

    log4j.appender.ADAPTORS.layout=org.apache.log4j.PatternLayout

    log4j.appender.ADAPTORS.layout.ConversionPattern=%d{ABSOLUTE} %5p [%t] %c - %m%n