Here is the code for the program. I took out the top comments and I have made the line on which we get the error bold.
Thanks for any help you are able to provide!!
Brian Denning
SET CENTURY ON
* 11/10/1999 RJW END UPDATED CODE FOR Y2K
SET DELETED ON
SET SAFETY OFF
SET CONFIRM OFF
*
* ARRIVE AT PROMISE DOCK DATE
*
CLEAR
? "OPENING DATA FILES."
IF DOW(DATE()) < 3
STORE DATE() + (5 - DOW(DATE())) TO TPROM_DATE
ELSE
STORE DATE() + (5 - DOW(DATE()) + 7) TO TPROM_DATE
ENDIF DOW(DATE()) < 3
****************************************************************************
*
IF FILE("M:\MFGSYS\LOG.DMB"

&& LOG FILE FOUND.
HANDLE1 = FOPEN("M:\MFGSYS\LOG.DMB"

=FWRITE(HANDLE1, DTOS(DATE()) + TIME() + "BEGIN SS-ORDERS PROGRAM."

=FWRITE(HANDLE1, "PLEASE CHECK RESTORE INSTRUCTIONS IN SSORDER.PRG."

=FCLOSE(HANDLE1)
ELSE && ELSE CREATE A LOG FILE.
HANDLE1 = FCREATE("M:\MFGYS\LOG.DMB"

=FWRITE(HANDLE1, DTOS(DATE()) + TIME() + "BEGIN SS-ORDERS PROGRAM."

=FCLOSE(HANDLE1)
ENDIF
*
*** BACKUP DATA FILES
IF FILE("E:\DMB\SSUPDATE\OPENORD.DM"

DELETE FILE E:\DMB\SSUPDATE\OPENORD.DM
ENDIF
IF FILE("E:\DMB\OPENORD.DMB"

RENAME E:\DMB\OPENORD.DMB TO E:\DMB\SSUPDATE\OPENORD.DM
ENDIF
SET EXCLU OFF
USE E:\DMB\OPENORD.DBF
COPY TO E:\DMB\OPENORD.DMB
SET EXCLU ON
USE
*** OPEN DATA FILES
*
*
*
SET EXCLUSIVE ON
SELECT 15
USE E:\KNZDATA\F_SYSPEC.DBF
STORE SHOP_DAYS TO SHOPDAYS
*
STORE 0 TO LNCTR1, TMPPO
STORE .T. TO FIRST
? "CREATING DMB S.S. ORDER."
DO SSTOCK
* UPDATE LOG
HANDLE1 = FOPEN("M:\MFGSYS\LOG\LOG.DMB"

=FWRITE(HANDLE1, DTOS(DATE()) + TIME() + "SUCCESSFULLY COMPLETED S.S. ORDERS."

=FCLOSE(HANDLE1)
*
STORE 0 TO LNCTR2
STORE .T. TO FIRST
SELECT 15
USE E:\KNZDATA\F_SYSPEC.DBF
*
SELECT A
USE E:\DMB\SSUPDATE\SHOPCAL.DBF
INDEX ON SHOP_DATE TO E:\DMB\SSUPDATE\SHOPCAL.IDX
SET INDEX TO E:\DMB\SSUPDATE\SHOPCAL.IDX
SEEK DATE()-1
IF .NOT. FOUND()
? "SHOP CALANDER NOT VALID"
RETURN
ELSE
SKIP + SHOPDAYS
IF EOF()
? "SHOP CALANDER NOT VALID"
RETURN
ELSE
STORE SHOP_DATE TO SDATE
ENDIF EOF()
ENDIF .NOT. FOUND()
*
**** CREATE A NEW FILE CONTAINING ONLY THE REQUIREMENTS FOR THIS DATE.
*
*
* 06/07/96 BY RJW - BEGIN
SELECT J
USE E:\Conpick\CONPTEST.DBF
INDEX ON MO_NUMBER TO E:\Conpick\CONPTEST.IDX
* 06/07/96 BY RJW - END
*
SELECT B
USE E:\DMB\SSUPDATE\DMBSDAL.DBF
set relation to order_no into j
COPY TO E:\DMB\SSUPDATE\TMPSDAL.DBF FOR (REQD_DATE >= DATE()-1 .AND. REQD_DATE <= SDATE .AND. ORDER_NO <> SPACE(15)) .OR. (!EOF('J') .AND. ORDER_NO <> SPACE(15))
*COPY TO E:\DMB\SSUPDATE\TMPSDAL.DBF FOR REQD_DATE > DATE() .AND. REQD_DATE <= SDATE .AND. ORDER_NO <> SPACE(15)
*COPY TO E:\DMB\SSUPDATE\TMPSDAL.DBF FOR REQD_DATE <= SDATE .AND. ORDER_NO <> SPACE(15)
*
USE E:\DMB\SSUPDATE\TMPSDAL.DBF
INDEX ON ITEM + DTOS(REQD_DATE) TO E:\DMB\SSUPDATE\TMPSDAL.IDX
SET INDEX TO E:\DMB\SSUPDATE\TMPSDAL.IDX
*
**** CREATE A NEW FILE CONTAINING ONLY THE ORDERS FOR THIS DATE.
*
SELECT C
USE E:\DMB\SSUPDATE\DMBSUP.DBF
SET RELATION TO ORDER_NO INTO J
*COPY TO E:\DMB\SSUPDATE\TMPSUP.DBF FOR SCHED_DATE >= DATE() .AND. SCHED_DATE <= SDATE
COPY TO E:\DMB\SSUPDATE\TMPSUP.DBF FOR (SCHED_DATE <= SDATE .AND. ORDER_QTY > QTY_RCVD) .OR. (!EOF('J'))
*
USE E:\DMB\SSUPDATE\TMPSUP.DBF
INDEX ON ALLTRIM(ITEM) + DTOS(SCHED_DATE) TO E:\DMB\SSUPDATE\TMPSUP.IDX
INDEX ON ORDER_NO+ALLTRIM(LN_NO) TO E:\DMB\SSUPDATE\TMPSUP2.IDX
INDEX ON ALLTRIM(ITEM) TO E:\DMB\SSUPDATE\TMPSUP3.IDX
SET INDEX TO E:\DMB\SSUPDATE\TMPSUP.IDX, E:\DMB\SSUPDATE\TMPSUP2.IDX, E:\DMB\SSUPDATE\TMPSUP3.IDX
*
SELECT F
USE E:\DMB\SSUPDATE\DMBORDER.DBF
*ZAP
*
SELECT G
USE E:\KNZDATA\MOCFG.DBF
INDEX ON ALLTRIM(MO_NUMBER) + ALLTRIM(COMP_WC) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) TO E:\KNZDATA\MOCFG.IDX
SET INDEX TO E:\KNZDATA\MOCFG.IDX
*
SELECT H
SET EXCLU OFF
USE E:\DMB\OPENORD.DBF
INDEX ON ALLTRIM(MO_NUMBER) + ALLTRIM(ITEM) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) TO E:\DMB\OPENORD1.IDX
INDEX ON ALLTRIM(ITEM) + DTOS(PO_DATE) TO E:\DMB\OPENORD2.IDX
INDEX ON PO_NUMBER TO E:\DMB\OPENORD3.IDX
SET INDEX TO E:\DMB\OPENORD1.IDX, E:\DMB\OPENORD2.IDX, E:\DMB\OPENORD3.IDX
SET EXCLU ON
* 06/07/96 BY RJW - BEGIN
*
SELECT I
USE E:\DMB\SSUPDATE\OPENCONP.DBF
INDEX ON ALLTRIM(MO_NUMBER) + ALLTRIM(ITEM) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) TO E:\DMB\OPENCON1.IDX
INDEX ON ALLTRIM(ITEM) + DTOS(PO_DATE) TO E:\DMB\OPENCON2.IDX
INDEX ON PO_NUMBER TO E:\DMB\OPENCON3.IDX
SET INDEX TO E:\DMB\OPENCON1.IDX, E:\DMB\OPENCON2.IDX, E:\DMB\OPENCON3.IDX
*
SELECT J
USE E:\Conpick\CONPTEST.DBF
INDEX ON MO_NUMBER TO E:\Conpick\CONPTEST.IDX
****************************************************************************
*** BEGIN PROCESSING ORDERS/REQUIREMENTS
* FIRST, DELETE ALL PREVIOUSLY FILLED ORDERS AND REQUIREMENTS, SO WE DON'T
* HAVE TO DEAL WITH THEM AGAIN.
*
SELECT H
SET INDEX TO E:\DMB\OPENORD3.IDX, E:\DMB\OPENORD1.IDX, E:\DMB\OPENORD2.IDX
SELECT C
SET RELATION TO ORDER_NO INTO H
DELETE ALL FOR .NOT. EOF('H') .AND. ORDER_QTY = H->PO_QTY .AND. SCHED_DATE = H->REQD_DATE
SET RELATION TO
SELECT H
SET INDEX TO E:\DMB\OPENORD1.IDX, E:\DMB\OPENORD2.IDX, E:\DMB\OPENORD3.IDX
SELE B
SET RELATION TO ALLTRIM(ORDER_NO) + ALLTRIM(ITEM) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) INTO H
DELETE ALL FOR .NOT. EOF('H')
SET RELATION TO
*
* 06/07/96 BY RJW - BEGIN
SELECT I
SET INDEX TO E:\DMB\OPENCON3.IDX, E:\DMB\OPENCON1.IDX, E:\DMB\OPENCON2.IDX
SELECT C
SET RELATION TO ORDER_NO INTO I
DELETE ALL FOR .NOT. EOF('I') .AND. ORDER_QTY = I->PO_QTY .AND. SCHED_DATE = I->REQD_DATE
SET RELATION TO
SELECT I
SET INDEX TO E:\DMB\OPENCON1.IDX, E:\DMB\OPENCON2.IDX, E:\DMB\OPENCON3.IDX
SELE B
SET RELATION TO ALLTRIM(ORDER_NO) + ALLTRIM(ITEM) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) INTO I
DELETE ALL FOR .NOT. EOF('I')
SET RELATION TO
*
* NEXT, DEAL WITH ONLY UNFILLED REQUIREMENTS AND ORDERS.
*
*** SET RELATIONSHIPS
*
SELECT B
*
SET RELATION TO ALLTRIM(ORDER_NO) + ALLTRIM(ITEM) + ALLTRIM(PT_USE) + ALLTRIM(SEQN) INTO G
*
****************************************************************************
SELECT B
GO TOP
DO WHILE .NOT. EOF()
STORE ALLTRIM(ITEM) TO TMP_ITEM
STORE RECNO() TO ITEMREC
*
**** SUM TOTAL ITEM REQUIREMENTS FOR PRODUCTION
? "CREATING DMB M.O. ORDER."
*
SUM REQD_QTY FOR ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM) TO REQ
GO ITEMREC
SELECT D
*
*
*
**** PROCESS MANUFACTURING ORDER REQUIREMENTS
*
SELECT B
IF REQ > 0 && QTY_TO_ORD > 0 && IF THERE IS A NEED TO ORDER
*
**** SELECT REQUIREMENTS FOR THE CURRENT ITEM
**** SELECT ORDERS FOR THE CURRENT ITEM
*
SELECT C
SET FILTER TO ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM)
SELECT B
*
**** LOOP THROUGH MANUFACTURING ORDER REQUIREMENTS
*
STORE 0 TO CNTR
STORE 0 TO FSORDQTY
STORE 0 TO ONORDQTY
STORE .F. TO SAFSTKFL
DO WHILE .NOT. EOF() .AND. ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM)
*
SELECT H
SET INDEX TO E:\DMB\OPENORD1.IDX, E:\DMB\OPENORD2.IDX
GO TOP
SEEK ALLTRIM(B->ORDER_NO) + ALLTRIM(B->ITEM) + ALLTRIM(B->PT_USE) + ALLTRIM(B->SEQN)
IF FOUND() && MO IS ALREADY ORDERED, GO TO NEXT REQUIREMENT AND LOOP
SELECT B
SKIP +1
LOOP
ELSE
SELECT I
SET INDEX TO E:\DMB\OPENCON1.IDX, E:\DMB\OPENCON2.IDX
GO TOP
SEEK ALLTRIM(B->ORDER_NO) + ALLTRIM(B->ITEM) + ALLTRIM(B->PT_USE) + ALLTRIM(B->SEQN)
IF FOUND() && MO IS ALREADY ORDERED, GO TO NEXT REQUIREMENT AND LOOP
SELECT B
SKIP +1
LOOP
ENDIF
SELECT H
ENDIF FOUND()
*
SELECT J
IF SEEK(ALLTRIM(B->ORDER_NO))
DO CON_ORD IN E:\DMB\SSUPDATE\SSORDER4.PRG && CREATE CONPICK ORDER
ELSE
DO MAKE_ORD IN E:\DMB\SSUPDATE\SSORDER4.PRG && CREATE NORMAL ORDER
ENDIF
ENDDO WHILE .NOT. EOF() .AND. ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM)
ELSE
SELECT B
SKIP +1
ENDIF QTY_TO_ORD > 0
SELECT B
ENDDO WHILE .NOT. EOF()
*
* SYNC UP THE NEXT PO NUMBERS
*
? "FINISHED CREATING DMB M.O. ORDER."
*sele 15
SELECT 15 this is where the error occurs
USE E:\KNZDATA\F_SYSPEC.DBF
IF F_NEXTPO1 <> F_NEXTPO2
IF F_NEXTPO1 < F_NEXTPO2
REPLACE F_NEXTPO1 WITH F_NEXTPO2
ELSE
REPLACE F_NEXTPO2 WITH F_NEXTPO1
ENDIF F_NEXTPO1 < F_NEXTPO2
ENDIF F_NEXTPO1 <> F_NEXTPO2
*
* 06/07/96 BY RJW - BEGIN ADD UP INDIVIDUAL M.O.+ITEM QUANTITIES TO
* PLACE INTO ONE P.O. LINE ITEM.
*
SELECT I
INDEX ON CP_NAME + PT_USE + ITEM TO E:\DMB\OPENCON4.IDX FOR SENT <> .T.
GO TOP
DO WHILE !EOF()
STORE 0 TO TOTPOQTY
STORE {01/01/2050} TO LOWDT
STORE ALLTRIM(CP_NAME) + PT_USE + ALLTRIM(ITEM) TO TITEM
DO WHILE ALLTRIM(CP_NAME) + PT_USE + ALLTRIM(ITEM) = TITEM .AND. !EOF()
STORE TOTPOQTY + PO_QTY TO TOTPOQTY
IF REQD_DATE < LOWDT
STORE REQD_DATE TO LOWDT
ENDIF REQD_DATE < LOWDT
SKIP +1
ENDDO WHILE ALLTRIM(CP_NAME) + PT_USE + ALLTRIM(ITEM) = TITEM
SKIP -1
IF EOF() OR ITEM = SPACE(15)
EXIT
ENDIF
IF TOTPOQTY > 0
SELECT H
APPEND BLANK
IF RLOCK()
REPLACE PO_NUMBER WITH I->PO_NUMBER
REPLACE ITEM WITH I->ITEM
REPLACE REQD_QTY WITH TOTPOQTY
REPLACE REQD_DATE WITH LOWDT
REPLACE MO_NUMBER WITH I->CP_NAME + ALLTRIM(STR(MONTH(DATE()))) + ALLTRIM(STR(DAY(DATE())))
REPLACE MO_LN_NO WITH "000"
REPLACE LN_TYP WITH 'M'
REPLACE OPN_START WITH { / / }
REPLACE PARENT WITH I->CP_NAME
REPLACE PT_USE WITH I->PT_USE
REPLACE SEQN WITH "999"
REPLACE ISSUED_QTY WITH 0.0
REPLACE SHIPD_QTY WITH 0
REPLACE ISSUED_QTY WITH 0
REPLACE DMND_TYP WITH 'N'
REPLACE PO_QTY WITH TOTPOQTY
REPLACE PO_LN_NO WITH "000" && DOING ADD-UP PO_LN_NO IN REPORT.PRG
* && SO WE MATCH PO_LN_NO WITH MO_NUMBER+
* && MO_LN_NO.
REPLACE PO_DATE WITH DATE()
REPLACE PROM_DATE WITH I->PROM_DATE
ENDIF RLOCK()
UNLOCK
SELECT I
SKIP +1
ENDIF TOTPOQTY > 0
ENDDO WHILE !EOF
SELECT I
SET INDEX TO
REPLACE ALL SENT WITH .T.
*
* UPDATE LOG
HANDLE1 = FOPEN("M:\MFGSYS\LOG.DMB"

=FWRITE(HANDLE1, DTOS(DATE()) + TIME() + "SUCCESSFULLY COMPLETED ALL M.O. ORDERS."

=FCLOSE(HANDLE1)
*
CLOSE ALL
DELETE FILE E:\DMB\SSUPDATE\TMPSDAL.DBF
DELETE FILE E:\DMB\SSUPDATE\TMPSUP.DBF
RETURN
****************************************************************************
* PROCEDURE CLOSE FILLED ORDERS TO HISTORY
****************************************************************************
PROCEDURE CLOSEORD
SELECT A
USE E:\DMB\OPENORD.DBF
SELECT B
USE E:\DMB\SSUPDATE\DMBSUP.DBF
INDEX ON ORDER_NO TO E:\DMB\SSUPDATE\DMBSUP.IDX
SET INDEX TO E:\DMB\SSUPDATE\DMBSUP.IDX
SET FILTER TO ORDER_QTY > QTY_RCVD && ONLY NEED OPEN ORDERS.
SELECT C
USE E:\DMB\SSUPDATE\DMBHIS.DBF
SELECT A
SET RELATION TO PO_NUMBER INTO B
SET FILTER TO EOF('B')
GO TOP
DO WHILE .NOT. EOF()
SELECT C
APPEND BLANK
IF RLOCK()
REPLACE ITEM WITH A->ITEM
REPLACE REQD_QTY WITH A->REQD_QTY
REPLACE REQD_DATE WITH A->REQD_DATE
REPLACE MO_NUMBER WITH A->MO_NUMBER
REPLACE MO_LN_NO WITH A->MO_LN_NO
REPLACE LN_TYP WITH A->LN_TYP
REPLACE OPN_START WITH A->OPN_START
REPLACE PARENT WITH A->PARENT
REPLACE PT_USE WITH A->PT_USE
REPLACE SEQN WITH A->SEQN
REPLACE ISSUED_QTY WITH A->ISSUED_QTY
REPLACE DMND_TYP WITH A->DMND_TYP
REPLACE SHIPD_QTY WITH B->QTY_RCVD
REPLACE PO_NUMBER WITH A->PO_NUMBER
REPLACE PO_LN_NO WITH A->PO_LN_NO
REPLACE PO_QTY WITH A->PO_QTY
REPLACE PO_DATE WITH A->PO_DATE
REPLACE PROM_DATE WITH A->PROM_DATE
REPLACE CLOSE_DATE WITH DATE()
ENDIF RLOCK()
UNLOCK
SELECT A
IF RLOCK()
DELETE
ENDIF RLOCK()
UNLOCK
SKIP +1
ENDDO WHILE .NOT. EOF()
SELECT A
* PACK
CLOSE ALL
*
****************************************************************************
* PROCEDURE PROCESS ORDERS TO RESTORE SAFETY STOCK
****************************************************************************
PROCEDURE SSTOCK
SELECT A
USE E:\DMB\SSUPDATE\DMB.DBF
*
* 07/01/97 REVISION TO CHECK FOR PLNG DMB-ITEMS WITH SSITEMS
DO DMBCHECK
* 07/01/97 END REVISION TO CHECK FOR PLNG DMB-ITEMS WITH SSITEMS
*
*
SELECT B
USE E:\DMB\DMBMINI.DBF
INDEX ON ITEM TO E:\DMB\DMBMINI.IDX
SET INDEX TO E:\DMB\DMBMINI.IDX
*
SELECT C
USE E:\DMB\SAFESTK.DBF
INDEX ON ITEM TO E:\DMB\SAFESTK.IDX
SET INDEX TO E:\DMB\SAFESTK.IDX
*
SELECT D
SET EXCLU OFF
USE E:\DMB\OPENORD.DBF
INDEX ON ALLTRIM(ITEM) TO E:\DMB\DMBHIS.IDX
SET INDEX TO E:\DMB\DMBHIS.IDX
SET EXCLU ON
*
SELE E
USE E:\DMB\SSUPDATE\DMBSUP.DBF
INDEX ON ORDER_NO TO E:\DMB\SSUPDATE\DMBSUP.IDX
SET INDEX TO E:\DMB\SSUPDATE\DMBSUP.IDX
*
*
SELECT A
SET RELATION TO ITEM INTO C
GO TOP
*
**** PROCESS SAFETY STOCK REQUIREMENTS
*
DO WHILE .NOT. EOF()
STORE ALLTRIM(ITEM) TO TMP_ITEM
SELECT B
**** SUM THE AVAILABLE INVENTORY FOR EACH ITEM
SUM QTY_BY_LOC FOR ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM) TO INV && .and. stk = '???'
**** DETERMINE TOTAL QUANTITY TO ORDER TO MEET SAFETY STOCK REQUIREMENTS
SELECT A
IF C->ORDPNT = 0
STORE C->SAFEST TO ORDERPOINT
ELSE
STORE C->ORDPNT TO ORDERPOINT
ENDIF C->ORDPNT = 0
*
IF INV < ORDERPOINT
SELECT E
GO TOP
STORE 0 TO ON_ORDER
**** SUM ALL PENDING SAFETY STOCK ORDERS FOR EACH ITEM
SUM ORDER_QTY-QTY_RCVD FOR ALLTRIM(ITEM) = ALLTRIM(TMP_ITEM) .AND. LEFT(ALLTRIM(ORDER_NO),5) = "DMBSS" TO ON_ORDER
IF INV + ON_ORDER < ORDERPOINT
IF FIRST
STORE .F. TO FIRST
SELECT 15
STORE F_NEXTPO1 TO TMPPO
REPLACE F_NEXTPO1 WITH TMPPO+1
SELECT E
ENDIF
DO ORDERSS WITH (C->SAFEST - (INV + ON_ORDER))
ENDIF INV + ON_ORDER < ORDERPOINT
ENDIF INV < C->ORDPNT
SELECT A
SKIP +1
ENDDO WHILE .NOT. EOF()
CLOSE ALL
*
****************************************************************************
* PROCEDURE GATHER INFORMATION TO ORDER SAFETY STOCK
****************************************************************************
PROCEDURE ORDERSS
PARAMETER ORDQTY
SELECT D
STORE LNCTR1 + 1 TO LNCTR1
APPEND BLANK
IF RLOCK()
REPLACE PO_NUMBER WITH "DMBSS"+RIGHT("00000"+ ALLTRIM(STR(TMPPO)),6)
REPLACE ITEM WITH ALLTRIM(TMP_ITEM)
REPLACE REQD_QTY WITH ORDQTY
REPLACE REQD_DATE WITH DATE()
REPLACE MO_NUMBER WITH "DMBKNZINV"
REPLACE MO_LN_NO WITH "000"
REPLACE LN_TYP WITH 'S'
REPLACE PT_USE WITH "00000"
REPLACE SEQN WITH "000"
REPLACE ISSUED_QTY WITH 0
REPLACE DMND_TYP WITH 'N'
REPLACE SHIPD_QTY WITH 0
REPLACE PO_LN_NO WITH RIGHT("000"+ALLTRIM(STR(LNCTR1)),3)
REPLACE PO_QTY WITH ORDQTY
REPLACE PO_DATE WITH DATE()
REPLACE PROM_DATE WITH TPROM_DATE + 6
ENDIF RLOCK()
UNLOCK
*
****************************************************************************
* PROCEDURE GATHER INFORMATION TO ORDER M.O. STOCK
****************************************************************************
PROCEDURE MAKE_ORD
IF FIRST
STORE .F. TO FIRST
SELECT 15
STORE F_NEXTPO2 TO TMPPO
REPLACE F_NEXTPO2 WITH TMPPO+1
ENDIF
SELECT H
APPEND BLANK
IF RLOCK()
REPLACE PO_NUMBER WITH "DMB"+RIGHT("0000000" + ALLTRIM(STR(TMPPO)),8)
REPLACE ITEM WITH B->ITEM
REPLACE REQD_QTY WITH B->REQD_QTY
REPLACE REQD_DATE WITH B->REQD_DATE
REPLACE MO_NUMBER WITH B->ORDER_NO
REPLACE MO_LN_NO WITH G->LN_NO
REPLACE LN_TYP WITH B->LN_TYP
REPLACE OPN_START WITH B->OPN_START
REPLACE PARENT WITH B->PARENT
REPLACE PT_USE WITH B->PT_USE
REPLACE SEQN WITH B->SEQN
REPLACE ISSUED_QTY WITH B->ISSUED_QTY
REPLACE DMND_TYP WITH B->DMND_TYP
REPLACE SHIPD_QTY WITH 0
REPLACE ISSUED_QTY WITH 0
REPLACE DMND_TYP WITH 'N'
REPLACE PO_QTY WITH B->REQD_QTY - B->ISSUED_QTY
REPLACE PO_LN_NO WITH "000" && DOING ADD-UP PO_LN_NO IN REPORT.PRG
* && SO WE MATCH PO_LN_NO WITH MO_NUMBER+
* && MO_LN_NO.
REPLACE PO_DATE WITH DATE()
REPLACE PROM_DATE WITH TPROM_DATE + 6
ENDIF RLOCK()
UNLOCK
SELECT B
*
* 06/07/96 BY RJW - BEGIN
*
****************************************************************************
* PROCEDURE GATHER INFORMATION TO ORDER M.O. STOCK WITH A CONPICK
****************************************************************************
PROCEDURE CON_ORD
IF FIRST
STORE .F. TO FIRST
SELECT 15
STORE F_NEXTPO2 TO TMPPO
REPLACE F_NEXTPO2 WITH TMPPO+1
ENDIF
SELECT I
APPEND BLANK
IF RLOCK()
REPLACE PO_NUMBER WITH "DMB"+RIGHT("0000000" + ALLTRIM(STR(TMPPO)),8)
REPLACE ITEM WITH B->ITEM
REPLACE REQD_QTY WITH B->REQD_QTY
REPLACE REQD_DATE WITH B->REQD_DATE
REPLACE MO_NUMBER WITH B->ORDER_NO
REPLACE MO_LN_NO WITH G->LN_NO
REPLACE LN_TYP WITH B->LN_TYP
REPLACE OPN_START WITH B->OPN_START
REPLACE PARENT WITH B->PARENT
REPLACE PT_USE WITH B->PT_USE
REPLACE SEQN WITH B->SEQN
REPLACE ISSUED_QTY WITH B->ISSUED_QTY
REPLACE DMND_TYP WITH B->DMND_TYP
REPLACE SHIPD_QTY WITH 0
REPLACE ISSUED_QTY WITH 0
REPLACE DMND_TYP WITH 'N'
REPLACE PO_QTY WITH B->REQD_QTY - B->ISSUED_QTY
REPLACE PO_LN_NO WITH "000" && DOING ADD-UP PO_LN_NO IN REPORT.PRG
* && SO WE MATCH PO_LN_NO WITH MO_NUMBER+
* && MO_LN_NO.
REPLACE PO_DATE WITH DATE()
REPLACE PROM_DATE WITH TPROM_DATE + 6
REPLACE SENT WITH .F.
REPLACE CP_NAME WITH J->CP_NAME
ENDIF RLOCK()
UNLOCK
SELECT B
*
****************************************************************************
* PROCEDURE QUANTITY CHECK, FOR CHANGED ORDER QUANTITIES
****************************************************************************
PROCEDURE QTY_CHK
SELECT C
SET INDEX TO E:\DMB\SSUPDATE\TMPSUP2.IDX, E:\DMB\SSUPDATE\TMPSUP.IDX
SEEK H->PO_NUMBER+ALLTRIM(H->PO_LN_NO)
IF FOUND() .AND. (ORDER_QTY <> H->PO_QTY .OR. DTOS(H->REQD_DATE) <> DTOS(B->REQD_DATE))
SELECT F
APPEND BLANK
IF RLOCK()
REPLACE PO_NUMBER WITH H->PO_NUMBER
REPLACE ITEM WITH H->ITEM
REPLACE REQD_QTY WITH H->REQD_QTY
REPLACE REQD_DATE WITH H->REQD_DATE
REPLACE MO_NUMBER WITH H->MO_NUMBER
REPLACE MO_LN_NO WITH H->MO_LN_NO
REPLACE LN_TYP WITH H->LN_TYP
REPLACE OPN_START WITH H->OPN_START
REPLACE PARENT WITH H->PARENT
REPLACE PT_USE WITH H->PT_USE
REPLACE SEQN WITH H->SEQN
REPLACE NEW_QTY WITH B->REQD_QTY
REPLACE DMND_TYP WITH H->DMND_TYP
REPLACE PO_LN_NO WITH H->PO_LN_NO
REPLACE PO_QTY WITH H->PO_QTY
REPLACE PO_DATE WITH H->PO_DATE
REPLACE RUN_DATE WITH DATE()
REPLACE PROM_DATE WITH TPROM_DATE
ENDIF RLOCK()
UNLOCK
SELECT C
ENDIF FOUND() .AND. ORDER_QTY <> H->REQD_QTY
*
*
****************************************************************************
* PROCEDURE BUYR/PLNR CODE = DMB CHECK, FOR CHANGED CODES
****************************************************************************
PROCEDURE DMBCHECK
* OPEN IN AREA A IS "E:\DMB\SSUPDATE\DMB.DBF"
*
select a
index on item to E:\DMB\SSUPDATE\DMBa.IDX
* 07/01/97 REVISION TO CHECK FOR PLNG DMB ITEM CHANGES
SELECT F
SET EXCLU OFF
USE E:\KNZDATA\PLNG.DBF
copy to E:\DMB\SSUPDATE\DMBb.DBF FOR PLNR = "DMB" .AND. BUYR = "DMB"
use E:\DMB\SSUPDATE\DMBb.DBF
*INDEX ON ITEM TO E:\DMB\SSUPDATE\DMBb.IDX
*set relation to item into a
*REPORT FORM DMBNEW TO PRINT FOR EOF('A')
*set relation to
SELECT A
*INDEX ON ITEM TO DMB_ITEM.IDX
*SET RELATION TO ITEM INTO F
*REPORT FORM DMBCHNG TO PRINT FOR EOF('F')
USE
SELECT F
COPY TO E:\DMB\DMBSS\DMB.DBF
USE
DELETE FILE E:\DMB\SSUPDATE\DMBb.DBF
SELECT A
USE E:\DMB\SSUPDATE\DMB.DBF
return