Adding Lawson Table Process?

 4 Replies
 0 Subscribed to this topic
 17 Subscribed to this forum
Sort:
Author
Messages
Ron McDuffee
New Member Send Private Message
Posts: 3
New Member
We have a custom Interface Program that gets data for 401k payroll deductions.  Our Database is SQL Server.  This program already reads data from tables EMPLOYEE and PAYDEDUCTN.  I need to add a read for the PRDISTRIB table. I have added code to build the filter and perform the PERFORM 850-FILTER-BEGRNG-PRDSET2 command.  The program compiles but the program always returns PRDISTRIB-NOTFOUND as True. I am sure I have not performed a neccesary step or steps. Can anyone point me in the right direction for documantation or provide the steps? 
John Henley
Send Private Message
Posts: 3351
Ron, what code do you have prior to PERFORM 850-FILTER-BEGRNG-PRDSET2 ?? It should look something like this: MOVE xxx TO DB-COMPANY. MOVE xxx TO DB-EMPLOYEE. MOVE PRDSET2-EMPLOYEE TO WS-DB-BEG-RNG. Also please post the code you are using to create the filter.
Thanks for using the LawsonGuru.com forums!
John
Ron McDuffee
New Member Send Private Message
Posts: 3
New Member
Here is the actual code including the PERFORM:

     MOVE PRM-COMPANY            TO DB-COMPANY.       MOVE SPACES                 TO FILTER-STRING.       MOVE WS-PRD-FILTER          TO FILTER-STRING.       PERFORM 890-CREATE-FILTER.       MOVE PRM-FROM-DATE          TO FILTER-STRING.      PERFORM 890-SET-DATETIME-FILTER-VALUE.      MOVE PRM-FROM-DATE          TO FILTER-STRING.       PERFORM 890-SET-DATETIME-FILTER-VALUE.       MOVE "0"                     TO FILTER-STRING.       PERFORM 890-SET-ALPHANUM-FILTER-VALUE.

      MOVE PRDSET2-COMPANY        TO WS-DB-BEG-RNG.      PERFORM 850-FILTER-BEGRNG-PRDSET2. Below is the Filter definition in Working Storage:      02  WS-PRD-FILTER-GROUP.          03  FILLER              PIC X(23) VALUE                                "((PRD-GL-DATE < ?) AND ".          03  FILLER              PIC X(23) VALUE                                "(PRD-RUN-DATE < ?) AND ".          03  FILLER              PIC X(19) VALUE                                "(PRD-CHECK-ID > ?))".      02  FILLER REDEFINES WS-PRD-FILTER-GROUP.          03  WS-PRD-FILTER       PIC X(65). This should equate to the SQL statement: SELECT * FROM PRDISTRIB WHERE PRM-COMPANY = COMPANY AND GL_DATE < PRM-FROM-DATE AND RUN_DATE< PRM-FROM-DATE AND CHECK_ID > 0   (zero)

John Henley
Send Private Message
Posts: 3351
You kept overwriting FILTER-STRING with the values that you want inserted into the string. Also changed the check-id to a numeric... See if this works... MOVE WS-PRD-FILTER TO FILTER-STRING. PERFORM 890-CREATE-FILTER. MOVE PRM-FROM-DATE TO DATETIME-FILTER-VALUE. PERFORM 890-SET-DATETIME-FILTER-VALUE. MOVE PRM-FROM-DATE TO DATETIME-FILTER-VALUE. PERFORM 890-SET-DATETIME-FILTER-VALUE. MOVE 0 TO NUMERIC-FILTER-VALUE. PERFORM 890-SET-NUMERIC-FILTER-VALUE. MOVE PRM-COMPANY TO DB-COMPANY. MOVE PRDSET2-COMPANY TO WS-DB-BEG-RNG. PERFORM 850-FILTER-BEGRNG-PRDSET2.
Thanks for using the LawsonGuru.com forums!
John
Ron McDuffee
New Member Send Private Message
Posts: 3
New Member
THANK YOU, THANK YOU.  Can't believe I have been looking at that code for so long and missed that.  That solved the connection problem. Thanks again!!!