Files
CGW/CGW0100.PRG
Jason Soltys 7905c43278 first commit
2026-07-14 00:41:31 -05:00

1062 lines
35 KiB
Plaintext

#include 'fivewin.ch'
PROCEDURE CGW0100(INIT)
******************************************************
** MIKE LEWIS - MAIN MENU 09-10-93 - CGW0100
******************************************************
CLS
PRIVATE COLVAR := HNOR + ',N/W,,,' + LNOR
**************************
// LOAD UP PRIVATE VARIABLES FROM THE CONTROL FILE TO MEMORY
// ? m->abend
// 3/18/2020 - CLEAN UP LLINK64.LOG FILES
IF FILE( 'CGW64.LOG' )
FErase( 'CGW64.LOG' )
ENDIF
// 9/02/2020 - CLEAN UP LLINK64.LOG FILES
IF FILE( 'CS.LOG' )
FErase( 'CS.LOG' )
ENDIF
DBOPEN('IMPCUST')
DBOPEN('CONTROL')
MLMAR := SPACE(LMAR) //* CONTROL FILE FIELDS FOR TOP MARGIN
MTMAR := TMAR //* USED IN CGWPRINT
MBODY_LEN := BODY_LEN
MHEAD_LEN := HEAD_LEN
MSING_SHEET := UPPER(SING_SHEET)
//*
//** OBSOLETE 01/22/07
**MSLS_TAX_PCT := SLS_TX_PCT
//*
MHOME_LOC_CODE := LOC_CODE
MBASE_NUM = BASE_NUM
MMULL_SASH := MULL_SASH
MMULL_GLASS := MULL_GLASS
MPICKUPTAX := PICKUPTAX
MPICKUPDISC := PICKUPDISC
MPREPAYCODE := PREPAY_COD
//** P3N - 07/09/01
IF AT('{',MPREPAYCODE ) > 0 .AND. AT('}',MPREPAYCODE ) > 0
MPREPAYCODE := &MPREPAYCODE
ELSE
ERR_BOX(' "CONTROL" file PRE PAY CODE ARRAY is INVALID ', ;
' go to the FILE menu - TABLES AND CODE Definitions ', ;
' SYSTEM CONTROL file and fix the ARRAY!', ;
' Order entry will NOT be correct until this is fixed!')
ENDIF
MDEL_SHIP := DEL_SHIP
//** P3N - 07/09/01
IF AT('{',MDEL_SHIP ) > 0 .AND. AT('}',MDEL_SHIP ) > 0
MDEL_SHIP := &MDEL_SHIP
ELSE
ERR_BOX(' "CONTROL" file DELIVER ARRAY is INVALID ', ;
' go to the FILE menu - TABLES AND CODE Definitions ', ;
' SYSTEM CONTROL file and fix the ARRAY!', ;
' Order entry will NOT be correct until this is fixed!')
ENDIF
MPU_SHIP := PU_SHIP
//** P3N - 07/09/01
IF AT('{',MPU_SHIP ) > 0 .AND. AT('}',MPU_SHIP ) > 0
MPU_SHIP := &MPU_SHIP
ELSE
ERR_BOX(' "CONTROL" file PU ARRAY is INVALID ', ;
' go to the FILE menu - TABLES AND CODE Definitions ', ;
' SYSTEM CONTROL file and fix the ARRAY!', ;
' Order entry will NOT be correct until this is fixed!')
ENDIF
MINST_SHIP := INST_SHIP
//** P3N - 07/09/01
IF AT('{',MINST_SHIP ) > 0 .AND. AT('}',MINST_SHIP ) > 0
MINST_SHIP := &MINST_SHIP
ELSE
ERR_BOX(' "CONTROL" file INSTALLER ARRAY is INVALID ', ;
' go to the FILE menu - TABLES AND CODE Definitions ', ;
' SYSTEM CONTROL file and fix the ARRAY!', ;
' Order entry will NOT be correct until this is fixed!')
ENDIF
MGL521_AMT := GL521_AMT
MCOD_ARR := COD_CODE
//** P3N - 07/09/01
IF AT('{',MCOD_ARR ) > 0 .AND. AT('}',MCOD_ARR ) > 0
MCOD_ARR := &MCOD_ARR
ELSE
ERR_BOX(' "CONTROL" file COD code array is INVALID ', ;
' go to the FILE menu - TABLES AND CODE Definitions ', ;
' SYSTEM CONTROL file and fix the ARRAY!', ;
' Order entry will NOT be correct until this is fixed!')
ENDIF
FRACTION_ARR := MAKE_FRACTARR()
SELECT CONTROL
USE
**************************
// INVOKE THE MAIN MENU FROM HERE
***
*** THIS LOOP INVOKES THE MAIN MENU
***
OPTION := 0
CLS
DO WHILE .T.
CALLMENU(SYSCODE + '0000', OPTION)
ENDDO
****************************************************
PROCEDURE BUILDMENUS(INIT, ARCHIVE)
LOCAL SYSTITLE, REVVAR, REVVARARR, TITLE1, TITLE2, TITLE3
LOCAL EXTRA_UTIL := {}
LOCAL LSTART := 0
PRIVATE LONGITEM, TROW, BROW, LCOL, RCOL, MENUTYPE
PRIVATE ITEMARR, MENUPARM
MENUARR := {}
IF EMPTY(ARCHIVE)
ARCHIVE := .F.
BLDPRNTMENU(5,42)
BLDMASTMENU(ARCHIVE)
BLDIMPORTMENU(INIT, FUN1, FUN4, 0, 5) // MENUPOS = 0, LSTART = 5
ELSE
ARCHIVE := .T.
BLDMASTMENU(ARCHIVE)
BLDARCHMENU()
RETURN //** EXIT BUILDMENUS PROCEDURE!!!
ENDIF
// THE UTILITY MENU IS CALLED FROM BELOW
// IS THE USER PROPERLY SIGNED ON???
IF EMPTY(USER)
// NO KICK THEM OUT!!!!!!!
ERR_BOX(' Invalid User - Sign ON to USE the System! ' )
QUITPROC()
ENDIF
// SEE IF ORDER CONTROL CAPABLE!
DBOPEN('PASSWORD')
SEEK USER
IF O_CONTROL = 'X' .OR. INIT = '_FMAINT'
SETAVAR( 'SET', 'ACTION_CODE', 'ADD' )
_OC_CAPABLE = .T.
ELSE
_OC_CAPABLE = .F.
ENDIF
USE
IF INIT = '_FMAINT'
M->_THISUSER_TEMP := ALLTRIM( INIT )
ELSE
M->_THISUSER_TEMP := ALLTRIM( USER )
ENDIF
// 6/3/2020
M->_THISUSER_TEMP := GETENV( 'APPDATA' ) + '\LAAPC\' + M->_THISUSER_TEMP + '.TXT'
MENU_POS := {} // HOLDS LCOL POSITION OF MAIN MENU OPTION NAMES
AADD(MENU_POS, 0)
AADD(MENU_POS, 10)
AADD(MENU_POS, 22)
AADD(MENU_POS, 34)
AADD(MENU_POS, 44)
AADD(MENU_POS, 54)
OFFSET = 5 // AMOUNT TO STAGGER SUB MENUS
X = 0 // ARRAY POINTER
***********************************
** FILE MENU
***********************************
IF FUN1 = 'X' //////////////// F I L E \\\\\\\\\\\\\\\\\\\
X++
LSTART = MENU_POS[X]
ITEMARR := {}
MENUID := 'FILE000'
MENUTYPE := 'V'
TROW := 2
LCOL := LSTART
AADD(ITEMARR, {'OPEN', 'CGW1100', 'M', .T.})
AADD(ITEMARR, {'---------------------', , 'M', .F.})
AADD(ITEMARR, {'SYSTEM ADMINSTRATION', 'IMP1200', 'M', .T.})
AADD(ITEMARR, {'---------------------', , 'M', .F.})
**AADD(ITEMARR, {'PRINT / REVIEW Setup Data', 'PRNTDISP', 'M', .T.})
AADD(ITEMARR, {'ARCHIVE Processing', 'ARCHMENU', 'M', .T.})
AADD(ITEMARR, {'---------------------', , 'M', .F.})
AADD(ITEMARR, {'EXIT (Alt-E) ', 'ALTEPROC', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW1100'
MENUTYPE := 'V'
TROW := 4
LCOL := LSTART + OFFSET
AADD(ITEMARR, {'MODEL/PRODUCT Setup', 'CGW1111', 'M', .T.})
AADD(ITEMARR, {'CATEGORY Setup', 'CGW1121', 'M', .T.})
AADD(ITEMARR, {'ATTRIBUTE Definitions', 'CGW1140', 'M', .T.})
AADD(ITEMARR, {'FRAME CUTTING Attributes', 'CGW1130', 'M', .T.})
AADD(ITEMARR, {'CUSTOMER Maintenance', 'CGW1170', 'M', .T.})
AADD(ITEMARR, {'RULE BASE (System Wide)', 'CGW1150', 'M', .T.})
AADD(ITEMARR, {'TABLES and CODE Definitions', 'TABLECODE', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// PRODUCTS \\\\\\\\\\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'CGW1111'
MENUTYPE := 'V'
TROW = 6
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'DEFINE Models'
TITLE2 := 'DEFAULT CHOICES for MODEL Attributes'
TITLE3 = 'DELETE Model from System'
TITLE4 = 'REVIEW Model Setup Definitions'
AADD(ITEMARR, {TITLE1, "CGWACD('PRODUCTS')" , 'P', .T.})
AADD(ITEMARR, {TITLE3, "ACD_PAR_CHILD({'PRODUCT', 'PROD_ATTS', .T., 3, 'DEL' })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {'BASE PRICES for Model', "CGWPRICE", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'STANDARD SIZE Definitions', "ACD_PAR_CHILD({'PRODUCT', 'STD_SIZES', .F., 6, 'ADD' })", 'P', ADD_CAPABLE})
**AADD(ITEMARR, {'MISCELEANOUS PARTS Setup', "ACD_PAR_CHILD({NIL, 'MISC_ITEMS', .F., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'MISCELEANOUS PARTS Setup', "MISC_WHATWAY()" ,'P', ADD_CAPABLE})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// CATEGORY \\\\\\\\\\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'CGW1121'
MENUTYPE := 'V'
TROW = 7
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'DEFINE Categories'
TITLE2 := 'PRICING EXTRAS for Category'
TITLE3 = 'DELETE Categories from System'
TITLE4 = 'REVIEW Category Setup Definitions'
AADD(ITEMARR, {TITLE1, "CGWACD('CATEGORY')" , 'P', .T.})
AADD(ITEMARR, {TITLE3, "ADD_SING_REC({'CATEGORY', .T.,,,,,'DEL' })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE2, "ACD_PAR_CHILD({'CATEGORY', 'PRI_EXTRAS', .F., 6, 'ADD' })", 'P', ADD_CAPABLE})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// ATTRIBUTES \\\\\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'CGW1140'
MENUTYPE := 'V'
TROW = 8
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'ADD/CHANGE SYSTEM ATTRIBUTE Codes'
TITLE2 = 'DELETE Attributes from System'
TITLE3 = 'REVIEW Attribute Code Tables'
TITLE4 = 'RENAME Attributes'
AADD(ITEMARR, {TITLE1, "ACD_PAR_CHILD({'ATTRIBUTES','ATT_OPTS', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ACD_PAR_CHILD({'ATTRIBUTES','ATT_OPTS', .T., 3, 'DEL' })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE4, "REN_ATT()", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW1130'
MENUTYPE := 'V'
TROW = 9
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'ADD/CHANGE SYSTEM CUTTING ATTRIBUTE Codes'
TITLE2 = 'DELETE Cutting Attributes from System'
TITLE3 = 'REVIEW Cutting Attribute Code Tables'
AADD(ITEMARR, {TITLE1, "ACD_PAR_CHILD({NIL, 'ATTRIB_CUT', .T. })", 'P', ADD_CAPABLE})
**AADD(ITEMARR, {TITLE1, "ADD_SING_REC({'ATTRIB_CUT', .T. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ADD_SING_REC({'ATTRIB_CUT', .T.})", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE3, "GBROWSE({'ATTRIB_CUT', {}, .F., })", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// CUSTOMER MASTER \\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'CGW1170'
MENUTYPE := 'V'
TROW := 10
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'ADD/CHANGE Customers'
TITLE2 = 'DELETE Customers '
TITLE3 = 'REVIEW Customers '
AADD(ITEMARR, {TITLE1, "ADD_SING_REC({'CUST_MAST', .T.,,,,,'ADD',,.T.})", 'P', ADD_CAPABLE})
AADD(ITEMARR, {"SPECIAL CUSTOMER PRICING", "SPEC_PRICING(.T.)", 'P', .T.})
AADD(ITEMARR, {TITLE2, "ADD_SING_REC({'CUST_MAST', .T.,,,,,'DEL',,.T.})", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE3, "GBROWSE({'CUST_MAST', {'CUST_PRICE'}, .F., })", 'P', .T.})
AADD(ITEMARR, {'UPDATE/REVIEW GREAT PLAINS Files', "CALL_BTREV()", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// RULE BASE \\\\\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'CGW1150'
MENUTYPE := 'V'
TROW = 11
LCOL := LSTART + (OFFSET*2)
TITLE1 = 'ADD/CHANGE System Rules'
TITLE2 = 'DELETE Rules from System'
TITLE3 = 'REVIEW Rules'
AADD(ITEMARR, {TITLE1, "ACD_PAR_CHILD({'RULES', 'RULEPACK', .T., 6, 'ADD',,,,,,.T.,'USERFILEI' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ACD_PAR_CHILD({'RULES', 'RULEPACK', .T., 6, 'DEL',,,,,,.T.,'USERFILEI' })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {"VERIFY RULES Report", 'PRNTDISP("RULE REPORT")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'TABLECODE'
MENUTYPE := 'V'
TROW := 12
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'TAX TABLE Maintenance', "TAXMENU", 'M', .T.})
AADD(ITEMARR, {'MANUFACTURING LOCATIONS ', 'MGFMENU', 'M', .T.})
AADD(ITEMARR, {'GLASS BOX Sizes', "ACD_PAR_CHILD({NIL, 'GLASS_BOX', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'UOM Master List', "ACD_PAR_CHILD({NIL, 'UOMFILE', .T., 3, 'ADD' ,,,,,,.T.,'USERFILEX' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'COLOR Master List', "ACD_PAR_CHILD({NIL, 'COLOR_LIST', .T., 3, 'ADD',,,,,,.T.,'USERFILEX' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'REPAYMENT TERMS List', "ACD_PAR_CHILD({NIL, 'TERMS', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'SALES MEN Master List', "ACD_PAR_CHILD({NIL, 'SALESMEN', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'SHIPPING Methods', "ACD_PAR_CHILD({NIL, 'SHIPMETH', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {'SYSTEM CONTROL File', "ADD_SING_REC({'CONTROL', .T., , , , ,'ADD', , ,.F. })", 'P', ADD_CAPABLE}) // DO_MANYGETS = .F.
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'TAXMENU'
MENUTYPE := 'V'
TROW = 14
LCOL := LSTART + (OFFSET*3)
TITLE3 = 'TAX SCHEDULE Update'
TITLE4 = 'TAX DETAIL Update'
AADD(ITEMARR, {TITLE3, "ACD_PAR_CHILD({NIL, 'TAX_SCHED', .T., 3, 'ADD' })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE4, "ACD_PAR_CHILD({NIL, 'TAX_DETAIL', .F., 3, 'ADD',,,,.T.,,, })", 'P', ADD_CAPABLE})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
///////////////// MFG LOCATION \\\\\\\\\\\\\\\\\\\
ITEMARR := {}
MENUID := 'MGFMENU'
MENUTYPE := 'V'
TROW := 15
LCOL := LSTART + (OFFSET*3)
TITLE1 = 'ADD/CHANGE Manufacturing Locations'
TITLE2 = 'DELETE Manufacturing Locations from System'
TITLE3 = 'REVIEW Manufacturing Locations'
AADD(ITEMARR, {TITLE1, "ADD_SING_REC({'MFG_LOC', .T. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ADD_SING_REC({'MFG_LOC', .T.})", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE3, "GBROWSE({'MFG_LOC', {}, .F., })", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ENDIF
***********************************
** ARCHIVE MENU
***********************************
ITEMARR := {}
MENUID := 'ARCHMENU'
MENUTYPE := 'V'
TROW := 8
LCOL := LSTART + OFFSET
AADD(ITEMARR, {'Select ARCHIVE', 'SET_ARCHIVE()', 'P', .T.})
**IF _OC_CAPABLE
IF INIT = '_FMAINT' .OR. FUN6 = 'X'
AADD(ITEMARR, {'ARCHIVE Orders ', 'ORD_ARCHIVE()', 'P', .T.})
ENDIF
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
***********************************
** PROCESS MENU
***********************************
IF FUN2 = 'X'
X++
LSTART = MENU_POS[X]
ITEMARR := {}
MENUID := 'PROCESS000'
MENUTYPE := 'V'
TROW := 2
LCOL := LSTART
AADD(ITEMARR, {'ORDER ENTRY', 'OPEN2100("NEWOPEN", "CGW2100")', 'P', .T.})
AADD(ITEMARR, {'PRINT ORDERS', 'OPEN2100("NEWOPEN", "CGW2200")', 'P', .T.})
IF _OC_CAPABLE
AADD(ITEMARR, {'CONTROL', 'CONTROL000', 'M', .T. })
IF INIT = '_FMAINT' .OR. FUN6 = 'X'
AADD(ITEMARR, {'POST To Accounting', "POST_ACCT", 'M', .T. })
ENDIF
ENDIF
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CONTROL000'
MENUTYPE := 'V'
TROW := 6
LCOL := LSTART + OFFSET
AADD(ITEMARR, {'PRODUCTION CONTROL', "CNTRL_FUNC('PROD')", 'P', .T. })
IF INIT = '_FMAINT' .OR. FUN6 = 'X'
AADD(ITEMARR, {'ORDER CONTROL', "CNTRL_FUNC('SHIP')", 'P', .T. })
ENDIF
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
//** P3N - COMMENTED OUT 1/15/99 - I DO NOT THINK IT IS USED!!!!
//**ITEMARR := {}
//**MENUID := 'CONTROL030' //P3N - 5/12/98 - PRINT MENU BACKORDER
//**MENUTYPE := 'V'
//**TROW := 19
//**LCOL := LSTART + (OFFSET*3)
//**AADD(ITEMARR, {'SHIP ENTIRE ORDER', "SHIP_TOTQTY('ORD_MAST',.F.)", 'P', .T. })
//**AADD(ITEMARR, {'ORDER SHIPPING (LINE ITEMS)', "ACD_PAR_CHILD({ , 'OS_WORK', .F., 3, 'ADD NOAPPEND',,,,,'2135',.F.,'USERFILE2'})", 'P', .T. })
//**AADD(ITEMARR, {'ORDER SHIPPING (LINE ITEMS)', "ACD_PAR_CHILD({ , 'ORD_SHIP', .F., 3, 'ADD NOAPPEND',,,,,'2135',.F.,'USERFILE2'})", 'P', .T. })
//**ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
//** P3N - COMMENTED OUT 1/15/99 - I DO NOT THINK IT IS USED!!!!
ITEMARR := {}
MENUID := 'CGW2100'
MENUTYPE := 'V'
TROW := 4
LCOL := LSTART + OFFSET
IF _OC_CAPABLE
AADD(ITEMARR, {'SALES ORDER Processing', 'OPEN2100("ORDER")', 'P', _OC_CAPABLE })
ENDIF
AADD(ITEMARR, {'QUOTE Processing', 'OPEN2100("QUOTE")', 'P', .T.})
IF _OC_CAPABLE
AADD(ITEMARR, {'CONVERT Quotes to Orders', 'OPEN2100("CONV_QUOTE")', 'P', ADD_CAPABLE})
ENDIF
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2110'
MENUTYPE := 'V'
TROW := 6
LCOL := LSTART + (OFFSET*2)
TITLE1 := 'ADD Sales Orders'
TITLE2 := 'DELETE Sales Orders'
TITLE3 := 'CHANGE Sales Orders'
TITLE4 := 'REVIEW Sales Orders'
TITLE5 := 'REVIEW Customers '
**SCRNUM := '2110'
AADD(ITEMARR, {TITLE1, "ACD_ORDERS({'ORD_MAST', 'ORD_LINES' , .T., 3, 'ADD',,,,,, .F. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE3, "ACD_ORDERS({'ORD_MAST', 'ORD_LINES', .T., 3, 'ADD',,,,,, .F.,,'2110',,.T. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ACD_ORDERS({'ORD_MAST', 'ORD_LINES', .T., 3, 'DEL',,,,,, .F. })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE4, "ACD_ORDERS({'ORD_MAST', 'ORD_LINES', .T., 3, 'REV',,,,,, .F.,,'2110',,.T. })", 'P', .T.})
AADD(ITEMARR, {TITLE5, "GBROWSE({'CUST_MAST', {'CUST_PRICE'}, .F., })", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2112'
MENUTYPE := 'V'
TROW := 7
LCOL := LSTART + (OFFSET*2)
TITLE1 := 'ADD Quote'
TITLE2 := 'DELETE Quote'
TITLE3 := 'CHANGE Quote'
TITLE4 := 'REVIEW Quotes'
**SCRNUM := '2210'
AADD(ITEMARR, {TITLE1, "ACD_ORDERS({'QUOTE_MAST', 'QUOTE_LINE', .T., 3, 'ADD',,,,,, .F. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE3, "ACD_ORDERS({'QUOTE_MAST', 'QUOTE_LINE', .T., 3, 'ADD',,,,,, .F.,,'2210',,.T. })", 'P', ADD_CAPABLE})
AADD(ITEMARR, {TITLE2, "ACD_ORDERS({'QUOTE_MAST', 'QUOTE_LINE', .T., 3, 'DEL',,,,,, .F. })", 'P', DEL_CAPABLE})
AADD(ITEMARR, {TITLE4, "ACD_ORDERS({'QUOTE_MAST', 'QUOTE_LINE', .T., 3, 'REV',,,,,, .F.,,'2210',,.T. })", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2200'
MENUTYPE := 'V'
TROW := 5
LCOL := LSTART + (OFFSET*1)
AADD(ITEMARR, {'ORDER Print', 'CGW2210', 'M', .T.})
AADD(ITEMARR, {'QUOTE Print', 'OPEN2100("PRT QUOTE")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2210'
MENUTYPE := 'V'
TROW := 7
LCOL := LSTART + (OFFSET * 2)
AADD(ITEMARR, {'SELECTED Orders', 'OPEN2100("PRT ORD", , "SEL")', 'P', .T.})
AADD(ITEMARR, {'ALL UNPRINTED Orders', 'OPEN2100("PRT ORD", , "ALL")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ORDERS020'
MENUTYPE := 'V'
TROW := 10
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'PRODUCTION Orders', 'PRODORDER', 'M', .T.})
AADD(ITEMARR, {'DELIVERY Tickets', 'PRNT_ORDER("DEL")', 'P', .T.})
AADD(ITEMARR, {'ORDER DESK SPINDLE Copy', 'PRNT_ORDER("OD")', 'P', .T.})
AADD(ITEMARR, {'INTERCOMPANY Purchase Order', 'PRNT_ORDER("PO")', 'P', .T.})
IF _OC_CAPABLE
IF INIT = '_FMAINT' .OR. FUN6 = 'X'
AADD(ITEMARR, {'CUSTOMER Invoice', 'PRNT_ORDER("INV")', 'P', .T.})
ENDIF
ENDIF
AADD(ITEMARR, {'PRE-BILL Invoice', 'PRNT_ORDER("PREBILL")', 'P', .T.})
AADD(ITEMARR, {'PRE-COST Copy', 'PRNT_ORDER("PRECOST")', 'P', .T.})
AADD(ITEMARR, {'BACKORDER Copy', 'PRNT_ORDER("BACKORD")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRODORDER'
MENUTYPE := 'V'
TROW := 12
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'PRODUCTION Orders', 'PRNT_ORDER("PROD")', 'P', .T.})
AADD(ITEMARR, {'GOLDEN ROD CONTROL Copies', 'PRNT_ORDER("GOLDEN")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ORDERS022'
MENUTYPE := 'V'
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'Print CUSTOMER QUOTE', 'PRNT_ORDER("INV")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ORDERS024'
MENUTYPE := 'V'
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'CUSTOMER Invoice', 'PRNT_ORDER("INV")', 'P', .T.})
AADD(ITEMARR, {'BACKORDER Copy', 'PRNT_ORDER("BACKORD")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'POST_ACCT'
MENUTYPE := 'V'
TROW := 7
LCOL := LSTART + OFFSET
AADD(ITEMARR, {'Pre-Post Control Report', 'PRNTDISP("BILLTRAN RECAP")', 'P', .T.})
AADD(ITEMARR, {'POST INVOICES to Accounting', 'POST_BILLTRAN', 'P', .T.})
AADD(ITEMARR, {'REVIEW Posted MAPIX Transaction Files', 'REV_BILLTRAN', 'P', .T.})
AADD(ITEMARR, {'REVIEW Posted ABW Transaction Files', 'REV_ABWTRAN', 'P', .T.})
AADD(ITEMARR, {'Manual ZAP of Unposted File', 'ZAP_BILLTRAN', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ENDIF
***********************************
** REPORTS MENU
***********************************
IF FUN3 = 'X'
X++
LSTART = MENU_POS[X]
ITEMARR := {}
MENUID := 'OUTPUT000'
MENUTYPE := 'V'
TROW := 2
LCOL := LSTART
AADD(ITEMARR, {"REPORTS", 'REPORTS', 'M', .T.})
AADD(ITEMARR, {"LABELS", 'LABELS', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*******
// REPORTS OUTPUT OPTION
ITEMARR := {}
MENUID := 'REPORTS'
MENUTYPE := 'V'
TROW := 4
LCOL := LSTART + OFFSET
AADD(ITEMARR, {"SALES History", 'PRNTDISP("SALEHIST RECAP")', 'P', .T.})
AADD(ITEMARR, {"CUSTOMER Information", 'CUSTINFO', 'M', .T.})
AADD(ITEMARR, {"ORDER Reports", 'PRNTDISP("ORDER MASTER")', 'P', .T.})
AADD(ITEMARR, {"ORDER Fulfillment", 'PRNTDISP("ORDER FULFILLMENT")', 'P', .T.})
AADD(ITEMARR, {"PRODUCTION Reports", 'PRNTDISP("MONTHLY PRODUCTION")', 'P', .T.})
AADD(ITEMARR, {"PRICING Reports", 'PRICEMENU', 'M', .T.})
AADD(ITEMARR, {"CUTTING Reports", 'CUTMENU', 'M', .T.})
AADD(ITEMARR, {"SETUP REFERENCE Files", 'PRDIMENU', 'M', .T.})
AADD(ITEMARR, {"VERIFY RULES Report", 'PRNTDISP("RULE REPORT")', 'P', .T.})
// AADD(ITEMARR, {"Printer Setup", 'PRINTERSETUP()', 'P', .T. , .T. }) // 1-20-20 CALL AS_IS - NO ADDITIONAL MENU / RUN PARMS
//**AADD(ITEMARR, {"UNPOSTED BILLING Transactions", 'PRNTDISP("BILLTRAN RECAP")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CUSTINFO'
MENUTYPE := 'V'
TROW := 6
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {"DELIVERY / SETUP", 'DELTERM', 'M', .T.})
AADD(ITEMARR, {"SPECIAL PRICING", 'SPECPRICE', 'M', .T.})
AADD(ITEMARR, {'CUSTOMER MASTER', 'PRNTDISP( [CUSTOMER MASTER] )', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'DELTERM'
MENUTYPE := 'V'
TROW := 8
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'DELIVERY Information', 'PRNTDISP("CUSTDEL")', 'P', .T.})
AADD(ITEMARR, {'SETUP Information', 'PRNTDISP("CUSTSETUP")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'SPECPRICE'
MENUTYPE := 'V'
TROW := 9
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {"Special Pricing LIST", 'PRNTDISP("SPEC PRICE")', 'P', .T.})
AADD(ITEMARR, {"Special Pricing SETUP Report", 'PRNTDISP("PRICING REPORT-CUST")', 'P', .T.})
AADD(ITEMARR, {"DISCOUNTS Report", 'PRNTDISP("DISCOUNTS")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRICEMENU'
MENUTYPE := 'V'
TROW := 9
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {"MODEL Pricing Reports", 'PRNTDISP("PRICING REPORT-MODEL")', 'P', .T.})
AADD(ITEMARR, {"BASE PRICE TABLE Report", 'PRICERPT', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRICERPT'
MENUTYPE := 'V'
TROW := 12
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'SPECIFIC Product', 'CGWPRINT("MODEL BASE PRICE")', 'P', .T.})
AADD(ITEMARR, {'ALL PRODUCTS in a CATEGORY', 'CGWPRINT("CATEGORY BASE PRICE")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CUTMENU'
MENUTYPE := 'V'
TROW := 10
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {"MODEL PRODUCTION CUTTING Report", 'PRNTDISP("PRODUCT REPORT-MODEL")', 'P', .T.})
AADD(ITEMARR, {"CUSTOMER PRODUCTION CUTTING Report", 'PRNTDISP("PRODUCT REPORT-CUST")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*******
// LABEL OUTPUT OPTION
ITEMARR := {}
MENUID := 'LABELS'
MENUTYPE := 'V'
TROW := 5
LCOL := LSTART + OFFSET
AADD(ITEMARR, {"CUSTOMER Mailing Labels", 'MAILLABEL', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'MAILLABEL'
MENUTYPE := 'V'
TROW := 7
LCOL := LSTART + (OFFSET * 2)
AADD(ITEMARR, {"ONE Customer", 'LABEL_RUN("CUSTOMER-ONE")', 'P', .T.})
AADD(ITEMARR, {"MANY Customers", 'LABEL_RUN("CUSTOMER-MANY")', 'P', .T.})
AADD(ITEMARR, {"ONE Customer - Shipping Address", 'LABEL_RUN("CUSTOMER-ONE-SHIP")', 'P', .T.})
AADD(ITEMARR, {"MANY Customers - Shipping Address", 'LABEL_RUN("CUSTOMER-MANY-SHIP")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
//// PRINT / REVIEW \\\\\\
ITEMARR := {}
MENUID := 'PRDIMENU'
MENUTYPE := 'V'
TROW := 11
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'MODEL Definitions', 'PRNTMODL', 'M', .T.})
AADD(ITEMARR, {'CATEGORY Definitions', 'PRNTCAT', 'M', .T.})
AADD(ITEMARR, {'System Wide ATTRIBUTE Definitions', 'PRNTATT', 'M', .T.})
AADD(ITEMARR, {'MANUFACTURING LOCATIONS', 'PRNTDISP( [MANUFACTURING LOCATIONS] )', 'P', .T.})
AADD(ITEMARR, {'STANDARD SIZES', 'PRNTDISP("STD_SIZES")', 'P', .T.})
AADD(ITEMARR, {'PRICING EXTRAS', 'PRNTDISP("PRICING EXTRAS")', 'P', .T.})
AADD(ITEMARR, {'RULES', 'PRNTDISP("RULES")', 'P', .T.})
AADD(ITEMARR, {'TAX Information', 'TAXDISP', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRNTMODL'
MENUTYPE := 'V'
TROW++
TROW++
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'DEFAULT CHOICES - Model Attributes', 'CGWPRINT("MODEL OPTIONS")', 'P', .T.})
AADD(ITEMARR, {'ATTRIBUTES Assigned to Models', 'PRNTDISP("MODEL ATTRIBUTES")', 'P', .T.})
AADD(ITEMARR, {'LIST of Models', 'PRNTDISP("MODEL")', 'P', .T.})
AADD(ITEMARR, {'MISCELLEANOUS Items List', 'PRNTDISP("MISC ITEMS")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRNTCAT'
MENUTYPE := 'V'
TROW++
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'DEFAULT CHOICES - Category Attributes', 'CGWPRINT("CATEGORY OPTIONS")', 'P', .T.})
AADD(ITEMARR, {'ATTRIBUTES Assigned to Categories', 'PRNTDISP("CATEGORY ATTRIBUTES")', 'P', .T.})
AADD(ITEMARR, {'LIST of Categories', 'PRNTDISP("CATEGORY")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRNTATT'
MENUTYPE := 'V'
TROW++
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'System Wide Attribute CHOICES', 'PRNTDISP("ATTRIBUTE OPTIONS")', 'P', .T.})
AADD(ITEMARR, {'LIST of System Wide Attributes', 'PRNTDISP("ATTRIBUTES")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'TAXDISP'
MENUTYPE := 'V'
TROW := 20
LCOL := LSTART + (OFFSET*4)
AADD(ITEMARR, {'SUMMARY SCHEDULES', 'PRNTDISP("TAX SUMMARY SCHEDULES")', 'P', .T.})
AADD(ITEMARR, {'DETAIL COMPONENTS', 'PRNTDISP("TAX DETAIL COMPONENTS")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
* ITEMARR := {}
* MENUID := 'REPORTS'
* MENUTYPE := 'V'
* TROW := 4
* LCOL := LSTART + OFFSET
* AADD(ITEMARR, {"PRICING Report", 'PRICEMENU', 'M', .T.})
* AADD(ITEMARR, {"PRODUCTION CUTTING Report", 'CUTMENU', 'M', .T.})
* AADD(ITEMARR, {"CUSTOMER Listings", 'CUSTLIST', 'M', .T.})
* AADD(ITEMARR, {"MONTHLY PRODCTION Report", 'PRNTDISP("MONTHLY PRODUCTION")', 'P', .T.})
* AADD(ITEMARR, {"ORDER MASTER Report", 'PRNTDISP("ORDER MASTER")', 'P', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*
* ITEMARR := {}
* MENUID := 'PRICEMENU'
* MENUTYPE := 'V'
* TROW := 6
* LCOL := LSTART + (OFFSET*2)
* AADD(ITEMARR, {"MODEL Pricing Reports", 'PRNTDISP("PRICING REPORT-MODEL")', 'P', .T.})
* AADD(ITEMARR, {"BASE PRICE TABLE Report", 'PRICERPT', 'M', .T.})
* AADD(ITEMARR, {"CUSTOMER Pricing Reports", 'CUSTPRICE', 'M', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*
* ITEMARR := {}
* MENUID := 'CUSTPRICE'
* MENUTYPE := 'V'
* TROW := 10
* LCOL := LSTART + (OFFSET*3)
* AADD(ITEMARR, {"DISCOUNTS Report", 'PRNTDISP("DISCOUNTS")', 'P', .T.})
* AADD(ITEMARR, {"SPECIAL PRICING List", 'PRNTDISP("SPEC PRICE")', 'P', .T.})
* AADD(ITEMARR, {"CUSTOMER Pricing SETUP Report", 'PRNTDISP("PRICING REPORT-CUST")', 'P', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*
* ITEMARR := {}
* MENUID := 'CUTMENU'
* MENUTYPE := 'V'
* TROW := 7
* LCOL := LSTART + (OFFSET*2)
* AADD(ITEMARR, {"MODEL PRODUCTION CUTTING Report", 'PRNTDISP("PRODUCT REPORT-MODEL")', 'P', .T.})
* AADD(ITEMARR, {"CUSTOMER PRODUCTION CUTTING Report", 'PRNTDISP("PRODUCT REPORT-CUST")', 'P', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*
* ITEMARR := {}
* MENUID := 'PRICERPT'
* MENUTYPE := 'V'
* TROW := 9
* LCOL := LSTART + (OFFSET*3)
* AADD(ITEMARR, {'SPECIFIC Product', 'CGWPRINT("MODEL BASE PRICE")', 'P', .T.})
* AADD(ITEMARR, {'ALL PRODUCTS in a Category', 'CGWPRINT("CATEGORY BASE PRICE")', 'P', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
*
* ITEMARR := {}
* MENUID := 'CUSTLIST'
* MENUTYPE := 'V'
* TROW := 10
* LCOL := LSTART + (OFFSET*2)
* AADD(ITEMARR, {'DELIVERY Information', 'PRNTDISP("CUSTDEL")', 'P', .T.})
* AADD(ITEMARR, {'CUSTOMER SALES TERMS/SETUP', 'PRNTDISP("CUSTSETUP")', 'P', .T.})
* ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ENDIF
***********************************
** UTILITY MENU
***********************************
X++
LSTART = MENU_POS[X]
AADD(EXTRA_UTIL, {'SEND/RECEIVE Setup Data', 'SEND/RECV', 'M', .T.})
** IF _OC_CAPABLE
IF INIT = '_FMAINT' .OR. FUN6 = 'X'
AADD(EXTRA_UTIL, {'RESTORE Order/Quote Archive files', 'UTIL_OQFILES("RESTORE",.F.)', 'P', .T.})
ENDIF
**AADD(EXTRA_UTIL, {'POST INVOICE to History', 'POST_BILLTRAN', 'P', .T.})
BLDUTILMENU(LSTART, OFFSET, EXTRA_UTIL )
ITEMARR := {}
MENUID := 'SEND/RECV'
MENUTYPE := 'V'
TROW := 9
LCOL := LSTART + OFFSET
AADD(ITEMARR, {'SEND Setup Data', 'SENDOPT', 'M', .T.})
AADD(ITEMARR, {'RECEIVE Setup Data', 'RECVOPT', 'M', .T.})
AADD(ITEMARR, {'BROWSE Transfer Data', 'REVUOPT', 'M', .T.})
AADD(ITEMARR, {'ZAP Transfer Data', 'ZAPOPT', 'M', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'REVUOPT'
MENUTYPE := 'V'
TROW := 13
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'ATTRIBUTE Transfer Review', 'SEND_RECV("ATT", "REVU")', 'P', .T.})
AADD(ITEMARR, {'CUTTING ATTS Transfer Review', 'SEND_RECV("CUT", "REVU")', 'P', .T.})
AADD(ITEMARR, {'CATEGORY Transfer Review', 'SEND_RECV("CAT", "REVU")', 'P', .T.})
AADD(ITEMARR, {'MODEL Transfer Review', 'SEND_RECV("MODEL", "REVU")', 'P', .T.})
AADD(ITEMARR, {'RULE Transfer Review', 'SEND_RECV("RULE", "REVU")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'SENDOPT'
MENUTYPE := 'V'
TROW := 11
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'ATTRIBUTE Send', 'SEND_RECV("ATT", "SEND")', 'P', .T.})
AADD(ITEMARR, {'CUTTING ATTS Send', 'SEND_RECV("CUT", "SEND")', 'P', .T.})
AADD(ITEMARR, {'CATEGORY Send', 'SEND_RECV("CAT", "SEND")', 'P', .T.})
AADD(ITEMARR, {'MODEL Send', 'SEND_RECV("MODEL", "SEND")', 'P', .T.})
AADD(ITEMARR, {'RULE Send', 'SEND_RECV("RULE", "SEND")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ZAPOPT'
MENUTYPE := 'V'
TROW := 14
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'ATTRIBUTE Zap', 'SEND_RECV("ATT", "ZAP")', 'P', .T.})
AADD(ITEMARR, {'CUTTING ATTS Zap', 'SEND_RECV("CUT", "ZAP")', 'P', .T.})
AADD(ITEMARR, {'CATEGORY Zap', 'SEND_RECV("CAT", "ZAP")', 'P', .T.})
AADD(ITEMARR, {'MODEL Zap', 'SEND_RECV("MODEL", "ZAP")', 'P', .T.})
AADD(ITEMARR, {'RULE Zap', 'SEND_RECV("RULE", "ZAP")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'RECVOPT'
MENUTYPE := 'V'
TROW := 12
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'ATTRIBUTE Receive', 'SEND_RECV("ATT", "RECV")', 'P', .T.})
AADD(ITEMARR, {'CUTTING ATTS Receive', 'SEND_RECV("CUT", "RECV")', 'P', .T.})
AADD(ITEMARR, {'CATEGORY Receive', 'SEND_RECV("CAT", "RECV")', 'P', .T.})
AADD(ITEMARR, {'MODEL Receive', 'SEND_RECV("MODEL", "RECV")', 'P', .T.})
AADD(ITEMARR, {'RULE Receive', 'SEND_RECV("RULE","RECV")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
RETURN
******************************************************************
******************************************************************
******************************************************************
PROCEDURE BLDMASTMENU(ARCHIVE)
LOCAL PD_MENU1 := ' File '
LOCAL PD_MENU2 := ' Process '
LOCAL AR_MENU2 := ' Process Archive'
LOCAL PD_MENU3 := ' Output '
LOCAL PD_MENU4 := ' Utility'
LOCAL PD_MENU5 := ' Passwords '
ITEMARR := {}
IF EMPTY(ARCHIVE)
ARCHIVE := .F.
MENUID := 'CGW0000'
ELSE
ARCHIVE := .T.
MENUID := 'CGWARCH'
ENDIF
MENUTYPE := 'H'
TROW := 0
LCOL := 0
IF ARCHIVE
AADD(ITEMARR, {AR_MENU2, ALLTRIM(UPPER(PD_MENU2))+'000', 'M', .T.})
**AADD(ITEMARR, {PD_MENU3, ALLTRIM(UPPER(PD_MENU3))+'000', 'M', .T.})
ELSE
IF FUN1 = 'X'
AADD(ITEMARR, {PD_MENU1, ALLTRIM(UPPER(PD_MENU1))+'000', 'M', .T.})
ENDIF
IF FUN2 = 'X'
**AADD(ITEMARR, {PD_MENU2, ALLTRIM(UPPER(PD_MENU2))+'000', 'M', .T.})
AADD(ITEMARR, {PD_MENU2, ALLTRIM(UPPER(PD_MENU2))+'000', 'M', .T.})
ENDIF
IF FUN3 = 'X'
AADD(ITEMARR, {PD_MENU3, ALLTRIM(UPPER(PD_MENU3))+'000', 'M', .T.})
ENDIF
AADD(ITEMARR, {PD_MENU4, ALLTRIM(UPPER(PD_MENU4))+'000', 'M', .T.})
IF FUN5 = 'X'
AADD(ITEMARR, {PD_MENU5, ALLTRIM(UPPER(PD_MENU5))+'000', 'M', .T.})
ENDIF
ENDIF
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
RETURN
*************************************************************
* BUILD THE ARCHIVE MENU
*************************************************************
FUNCTION BLDARCHMENU()
LOCAL LSTART := 5
LOCAL OFFSET := 5
LOCAL TITLE1 := 'REVIEW Archived Orders'
LOCAL TITL1Q := 'REVIEW Archived Quotes'
LOCAL TITLE2 := 'PRINT Archived Orders'
LOCAL TITL2Q := 'PRINT Archived Quotes'
ITEMARR := {}
MENUID := 'PROCESS000'
MENUTYPE := 'V'
TROW := 2
LCOL := LSTART
AADD(ITEMARR, {'REVIEW ARCHIVE', 'OPEN2100("NEWOPEN", "CGW2100",,.T.)', 'P', .T.})
AADD(ITEMARR, {'PRINT ARCHIVE', 'OPEN2100("NEWOPEN", "CGW2200",,.T.)', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2100'
MENUTYPE := 'V'
TROW := TROW+2
LCOL := LSTART + (OFFSET*1)
AADD(ITEMARR, {'ORDER Processing', 'OPEN2100("ORDER",,,.T.)', 'P', .T.})
AADD(ITEMARR, {'QUOTE Processing', 'OPEN2100("QUOTE",,,.T.)', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2110'
MENUTYPE := 'V'
TROW := TROW+2
LCOL := LSTART + (OFFSET*2)
**SCRNUM := '2130'
AADD(ITEMARR, {TITLE1, "ACD_ORDERS({'ORD_MAST', 'ORD_LINES', .T., 3, 'REV',,,,,, .F.,,'2130',,.T. } )", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
TROW := TROW+1
ITEMARR := {}
MENUID := 'CGW2112'
MENUTYPE := 'V'
**SCRNUM := '2230'
AADD(ITEMARR, {TITL1Q, "ACD_ORDERS({'QUOTE_MAST', 'QUOTE_LINE', .T., 3, 'REV',,,,,, .F.,,'2230',,.T. })", 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'CGW2200'
MENUTYPE := 'V'
TROW := 5
LCOL := LSTART + (OFFSET*1)
AADD(ITEMARR, {'PRINT ORDERS', 'OPEN2100("PRT ORD", "ORDERS020")', 'P', .T.})
AADD(ITEMARR, {'QUOTE Print', 'OPEN2100("PRT QUOTE", "ORDERS022")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ORDERS020'
MENUTYPE := 'V'
TROW := TROW+1
LCOL := LSTART + (OFFSET*2)
AADD(ITEMARR, {'PRODUCTION Orders', 'PRODORDER', 'M', .T.})
AADD(ITEMARR, {'DELIVERY Tickets', 'PRNT_ORDER("DEL_ARCH")', 'P', .T.})
AADD(ITEMARR, {'ORDER DESK SPINDLE Copy', 'PRNT_ORDER("OD_ARCH")', 'P', .T.})
AADD(ITEMARR, {'INTERCOMPANY Purchase Order', 'PRNT_ORDER("PO_ARCH")', 'P', .T.})
AADD(ITEMARR, {'CUSTOMER Invoice', 'PRNT_ORDER("INV_ARCH")', 'P', .T.})
AADD(ITEMARR, {'PRE-BILL Invoice', 'PRNT_ORDER("PREBILL_ARCH")', 'P', .T.})
AADD(ITEMARR, {'PRE-COST Copy', 'PRNT_ORDER("PRECOST_ARCH")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'PRODORDER'
MENUTYPE := 'V'
TROW := TROW+2
LCOL := LSTART + (OFFSET*3)
AADD(ITEMARR, {'PRODUCTION Orders', 'PRNT_ORDER("PROD_ARCH")', 'P', .T.})
AADD(ITEMARR, {'GOLDEN ROD CONTROL Copies', 'PRNT_ORDER("GOLDEN_ARCH")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
ITEMARR := {}
MENUID := 'ORDERS022'
MENUTYPE := 'V'
LCOL := LSTART + (OFFSET*2)
TROW := 6
AADD(ITEMARR, {'Print CUSTOMER QUOTE', 'PRNT_ORDER("INV_ARCH")', 'P', .T.})
ADDMENU(MENUARR, ITEMARR, TROW, LCOL)
RETURN
****************************************************************
****************************************************************
****************************************************************
FUNCTION MAKE_FRACTARR()
LOCAL L, MTOP, MBOTT, LAST_TOP, LAST_BOTT, MDECIMAL
LOCAL FRACTION_ARR := {}, MFRACTION
SET DECIMALS TO 5
FOR L = 1 TO MBASE_NUM - 1
MTOP = L
MBOTT = MBASE_NUM
IF L > 1
LAST_TOP = MTOP
LAST_BOTT = MBOTT
MDECIMAL = MTOP / MBOTT // TURN FRACTION INTO DECIMAL NUMBER
// FIND REDUCED FRACTION VALUE
DO WHILE .T.
MTOP = MDECIMAL * MBOTT
IF MTOP - INT(MDECIMAL*MBOTT) <> 0
// CAN'T REDUCE ANY FARTHER, SO EXIT
MTOP = LAST_TOP
MBOTT = LAST_BOTT
EXIT
ENDIF
LAST_TOP = MTOP
LAST_BOTT = MBOTT
MBOTT = MBOTT / 2 // CUT DENIMINATOR IN HALF FOR NEXT REDUCTION TEST!
IF MBOTT-INT(MBOTT) <> 0
// CAN'T REDUCE ANY FARTHER, SO EXIT
MTOP = LAST_TOP
MBOTT = LAST_BOTT
EXIT
ENDIF
ENDDO
ELSE
MDECIMAL = MTOP / MBOTT // TURN FRACTION INTO DECIMAL NUMBER
ENDIF
MFRACTION = STR(MTOP,2) + '/' + LTRIM(STR(INT(MBOTT)))
AADD(FRACTION_ARR, {MFRACTION, MDECIMAL} )
NEXT
SET DECIMALS TO 2
RETURN FRACTION_ARR