Compile Lockup with 257 dcdialog.ch IF clause changes
Posted: Tue Jul 03, 2012 2:19 pm
In the new 257 dcdialog.ch, at the end of the file are the following 2 new clauses:
If I comment out these 2 lines, the following code compiles, however if I use the shipping 257 dcdialog.ch, the compiler xpp, locks up in the middle of compiling the array definition.
I have tried to reduce the array definition somewhat but cannot yet determine what is causing the problem.
Cliff.
Code: Select all
#xtranslate IIF <exp> <IFclauses,...> ELSE <ELSEclauses,...> ENDIF => ;
IIF( <exp>,(<IFclauses>),(<ELSEclauses>) )
#xtranslate IIF <exp> <IFclauses,...> ENDIF => IIF( <exp>,(<IFclauses>), nil )
Code: Select all
#include "dcdialog.ch"
#include "dcbitmap.ch"
#include "appevent.ch"
#include "xbp.ch"
#include "common.ch"
#include "axcdxcmx.ch"
#include "fca.ch"
#include "dll.ch" // PC CAW 08-19-05
#Include "xb2net.ch" // PC CAW 02-15-07
#pragma Library("DCXML.LIB") // xml
#pragma library("ASINET10.LIB") // e-mail
#pragma library ("xb2net.lib")
#define FCA_PRG_VERSION '6.20110803'
// aApp definitions of locals used in program
// Array positions 1 through 49 must not be altered
#define d_lEditmode aApp[1] // Array location reserved
#define d_lAddmode aApp[2] // Array location reserved
#define d_nTabpage aApp[3] // Array location reserved
#define d_bScatter aApp[4] // Array location reserved
#define d_bGather aApp[5] // Array location reserved
#define d_bNextpage aApp[6] // Array location reserved
#define d_bPrevpage aApp[7] // Array location reserved
#define d_cTitle aApp[8] // Array location reserved
#define d_lDisablesave aApp[9] // Array location reserved flag to disable save button
#define d_oDialog aApp[10] // Array location reserved
#define d_cInfile aApp[11,1] // Array location reserved
#define d_cInappnum aApp[11,2] // Array location reserved
#define d_cCcrbureau aApp[11,3] // Array location reserved
#define d_cCrfname aApp[11,4] // Array location reserved
#define d_cCrminit aApp[11,5] // Array location reserved
#define d_cCrlname aApp[11,6] // Array location reserved
#define d_cCrsname aApp[11,7] // Array location reserved
#define d_cCrssn1 aApp[11,8] // Array location reserved
#define d_cCrcity aApp[11,9] // Array location reserved
#define d_cCrstate aApp[11,10] // Array location reserved
#define d_cCrzip aApp[11,11] // Array location reserved
#define d_cCrdealnum aApp[11,12] // Array location reserved
#define d_nCramtreq aApp[11,13] // Array location reserved
#define d_cCrhphone aApp[11,14] // Array location reserved
#define d_cCradd1 aApp[11,15] // Array location reserved
#define d_cCradd2 aApp[11,16] // Array location reserved
#define d_cCrstcode aApp[11,17] // Array location reserved
#define d_dCrdob1 aApp[11,18] // Array location reserved
#define d_nCrmtgamt aApp[11,19] // Array location reserved
#define d_nCrrescur aApp[11,20] // Array location reserved
#define d_nCrrespri aApp[11,21] // Array location reserved
#define d_cCrenameh aApp[11,22] // Array location reserved
#define d_nCrjobcur aApp[11,23] // Array location reserved
#define d_nCrjobpri aApp[11,24] // Array location reserved
#define d_cCrephoneh aApp[11,25] // Array location reserved
#define d_cCreexth aApp[11,26] // Array location reserved
#define d_cCrseh aApp[11,27] // Array location reserved
#define d_nCrmthinch aApp[11,28] // Array location reserved
#define d_nCrothinch aApp[11,29] // Array location reserved
#define d_cCrssn2 aApp[11,30] // Array location reserved
#define d_cCrcafname aApp[11,31] // Array location reserved
#define d_cCrcaminit aApp[11,32] // Array location reserved
#define d_cCrcalname aApp[11,33] // Array location reserved
#define d_cCrcasname aApp[11,34] // Array location reserved
#define d_dCrdob2 aApp[11,35] // Array location reserved
#define d_cCrenamew aApp[11,36] // Array location reserved
#define d_nCrajobcur aApp[11,37] // Array location reserved
#define d_nCrajobpri aApp[11,38] // Array location reserved
#define d_cCrephonew aApp[11,39] // Array location reserved
#define d_cCreextw aApp[11,40] // Array location reserved
#define d_cCrsew aApp[11,41] // Array location reserved
#define d_nCrmthincw aApp[11,42] // Array location reserved
#define d_nCrothincw aApp[11,43] // Array location reserved
#define d_cCrcrtype aApp[11,44] // Array location reserved
#define d_cAreacode aApp[11,45] // Array location reserved
#define d_cEcfname aApp[11,46] // Array location reserved // Credit Report Parsing data
#define d_cEcminit aApp[11,47] // Array location reserved
#define d_cEclname aApp[11,48] // Array location reserved
#define d_cEcsname aApp[11,49] // Array location reserved
#define d_cEccafname aApp[11,50] // Array location reserved
#define d_cEccaminit aApp[11,51] // Array location reserved
#define d_cEccalname aApp[11,52] // Array location reserved
#define d_cEccasname aApp[11,53] // Array location reserved
#define d_cEcssn1 aApp[11,54] // Array location reserved
#define d_cEcssn2 aApp[11,55] // Array location reserved
#define d_dEcappbdate aApp[11,56] // Array location reserved
#define d_dEccapbdate aApp[11,57] // Array location reserved
#define d_cEctelephon aApp[11,58] // Array location reserved
#define d_cEcadd1 aApp[11,59] // Array location reserved
#define d_cEccscore aApp[11,60] // Array location reserved
#define d_cEcemp1 aApp[11,61] // Array location reserved
#define d_cEcemp2 aApp[11,62] // Array location reserved
#define d_nUsecdebt aApp[11,63] // Array location reserved
#define d_nTpay aApp[11,64] // Array location reserved
#define d_cEccscore2 aApp[11,65] // Array location reserved
#define d_nSellprice aApp[11,66] // Array location reserved
#define d_nDownpay aApp[11,67] // Array location reserved
#define d_lCreditquery aApp[11,68] // Array location reserved
#define d_cCallinby aApp[11,69] // Array location reserved // PC JAC 04-26-04
#define d_nNum_pymt aApp[11,70] // Array location reserved // PC JAC 04-26-04
#define d_cFile aApp[11,71] // Array location reserved // PC JAC 05-10-04
#define d_cPaymeth aApp[11,72] // Array location reserved // PC JAC 10-05-04
#define d_cRestype aApp[11,73] // Array location reserved // PC JAC 10-05-04
#define d_dLicnum1 aApp[11,74] // Array location reserved // PC CAW 01-04-05
#define d_dLicnum2 aApp[11,75] // Array location reserved // PC CAW 01-04-05
#define d_cPendcb aApp[11,76] // Array location reserved // PC CAW 05-18-05
#define d_cLspanish aApp[11,77] // Array location reserved // PC CAW 08-30-05
#define d_cLiscanada aApp[11,78] // Array location reserved // PC CAW 08-30-05
#define d_cRelation aApp[11,79] // Array location reserved // PC FIS 03-02-06
#define d_cFixedinc aApp[11,80] // Array location reserved // PC FIS 03-02-06
#define d_cFixedincc aApp[11,81] // Array location reserved // PC FIS 03-02-06
#define d_cEquiptype aApp[11,82] // Array location reserved // PC FIS 03-02-06
#define d_lAf1 aApp[11,83] // Array location reserved // PC FIS 04-24-06
#define d_lAf2 aApp[11,84] // Array location reserved // PC FIS 04-24-06
#define d_lAf3 aApp[11,85] // Array location reserved // PC FIS 04-24-06
#define d_lAf4 aApp[11,86] // Array location reserved // PC FIS 04-24-06
#define d_lAf5 aApp[11,87] // Array location reserved // PC FIS 04-24-06
#define d_lAf6 aApp[11,88] // Array location reserved // PC FIS 04-24-06
#define d_cMailname aApp[11,89] // Array location reserved // PC FIS 04-26-06
#define d_lHascoapp aApp[11,90] // Array location reserved // PC CAW 08-29-06
#define d_cA1sothinc aApp[11,91] // Array location reserved // PC FIS 02-12-07
#define d_cA2sothinc aApp[11,92] // Array location reserved // PC FIS 02-12-07
#define d_cA1occupat aApp[11,93] // Array location reserved // PC FIS 02-12-07
#define d_cA2occupat aApp[11,94] // Array location reserved // PC FIS 02-12-07
#define d_cA1cell aApp[11,95] // Array location reserved // PC FIS 05-31-07
#define d_cA2cell aApp[11,96] // Array location reserved // PC FIS 05-31-07
#define d_nTradeval aApp[11,97] // Array location reserved // PC FIS 06-22-07
#define d_cDlrovinit aApp[11,98] // Array location reserved // PC FIS 07-30-07
#define d_nDependents aApp[11,99] // Array location reserved // PC FIS 09-21-07
#define d_cApp1infile aApp[11,100] // Array location reserved // PC FIS 12-12-07
#define d_cApp2infile aApp[11,101] // Array location reserved // PC FIS 12-12-07
#define d_nTrades aApp[11,102] // Array location reserved // PC FIS 01-29-08
#define d_cFrsttrade aApp[11,103] // Array location reserved // PC FIS 01-29-08
#define d_lFirstcredrep aApp[11,104] // Array location reserved // PC FIS 01-29-08
#define d_lJointcred aApp[11,105] // Array location reserved // PC CAW 04-29-08
#define d_lAf7 aApp[11,106] // Array location reserved // PC BDJ 04-30-08
#define d_lAf8 aApp[11,107] // Array location reserved // PC BDJ 04-30-08
#define d_lAf9 aApp[11,108] // Array location reserved // PC BDJ 04-30-08
#define d_lAf10 aApp[11,109] // Array location reserved // PC BDJ 04-30-08
#define d_cTucustom aApp[11,110] // Array location reserved // PC CAW 06-16-08
#define d_nSpouseinc aApp[11,111] // Array location reserved // PC CAW 06-16-08
#define d_lCcflag aApp[11,112] // Array location reserved // PC FIS 07-02-08
#define d_cAadd_1 aApp[11,113] // Array location reserved // PC FIS 10-08-08 // PC CAW 10-08-08 start
#define d_cAadd_2 aApp[11,114] // Array location reserved // PC FIS 10-08-08
#define d_cAcity aApp[11,115] // Array location reserved // PC FIS 10-08-08
#define d_cAstate aApp[11,116] // Array location reserved // PC FIS 10-08-08
#define d_cAzip aApp[11,117] // Array location reserved // PC FIS 10-08-08
#define d_cAh_phone aApp[11,118] // Array location reserved // PC FIS 10-08-08
#define d_dEdbankrupt aApp[11,119] // Array location reserved // PC FIS 10-08-08
#define d_nRetiressi aApp[11,120] // Array location reserved // PC FIS 10-08-08
#define d_nRental aApp[11,121] // Array location reserved // PC FIS 10-08-08
#define d_nInvest aApp[11,122] // Array location reserved // PC FIS 10-08-08
#define d_nOincome aApp[11,123] // Array location reserved // PC FIS 10-08-08
#define d_nOincdesc aApp[11,124] // Array location reserved // PC FIS 10-08-08
#define d_nMortdebt aApp[11,125] // Array location reserved // PC FIS 10-28-08
#define d_lBkrupt12m aApp[11,126] // Array location reserved // PC FIS 11-05-08
#define d_lOpencheck aApp[11,127] // Array location reserved // PC FIS 11-05-08
#define d_lHasccard aApp[11,128] // Array location reserved // PC FIS 11-05-08
#define d_lHasauto aApp[11,129] // Array location reserved // PC FIS 11-05-08
#define d_lHascrdref aApp[11,130] // Array location reserved // PC FIS 11-05-08 // PC CAW 10-08-08 end
#define d_lSubprdecl aApp[11,131] // Array location reserved // PC FIS 01-08-09
#define d_cSubprcond aApp[11,132] // Array location reserved // PC FIS 01-08-09
#define d_lRedflaged aApp[11,133] // Array location reserved // PC BDJ 04-22-09
#define d_cInvoice aApp[11,134] // Array location reserved // PC CAW 02-09-11
#define d_nRevpayfct aApp[11,135] // Array location reserved // PC CAW 03-29-11
#define d_cPaygrade aApp[11,136] // Array location reserved // PC BDJ 05-15-11
#define d_cNconame aApp[11,137] // Array location reserved // PC BDJ 05-15-11
#define d_cOicname aApp[11,138] // Array location reserved // PC BDJ 05-15-11
#define d_cComoffic aApp[11,139] // Array location reserved // PC BDJ 05-15-11
#define d_dEtsdate aApp[11,140] // Array location reserved // PC BDJ 05-15-11
#define d_cMilbase aApp[11,141] // Array location reserved // PC BDJ 05-15-11
#define d_cCowrkref aApp[11,142] // Array location reserved // PC BDJ 05-15-11
#define d_cCowkphon aApp[11,143] // Array location reserved // PC BDJ 05-15-11
#define d_cOccinfo1 aApp[11,144] // Array location reserved // PC BDJ 05-15-11
#define d_cOccinfo2 aApp[11,145] // Array location reserved // PC BDJ 05-15-11
#define d_cOccinfo3 aApp[11,146] // Array location reserved // PC BDJ 05-15-11
#define d_cOccinfo4 aApp[11,147] // Array location reserved // PC BDJ 05-15-11
#define d_cOcctext1 aApp[11,148] // Array location reserved // PC BDJ 05-15-11
#define d_cOcctext2 aApp[11,149] // Array location reserved // PC BDJ 05-15-11
#define d_cOcctext3 aApp[11,150] // Array location reserved // PC BDJ 05-15-11
#define d_cOcctext4 aApp[11,151] // Array location reserved // PC BDJ 05-15-11
#define d_cCpaygrade aApp[11,152] // Array location reserved // PC BDJ 05-15-11
#define d_cCnconame aApp[11,153] // Array location reserved // PC BDJ 05-15-11
#define d_cCoicname aApp[11,154] // Array location reserved // PC BDJ 05-15-11
#define d_cCcomoffic aApp[11,155] // Array location reserved // PC BDJ 05-15-11
#define d_dCetsdate aApp[11,156] // Array location reserved // PC BDJ 05-15-11
#define d_cCmilbase aApp[11,157] // Array location reserved // PC BDJ 05-15-11
#define d_cCcowrkref aApp[11,158] // Array location reserved // PC BDJ 05-15-11
#define d_cCcowkphon aApp[11,159] // Array location reserved // PC BDJ 05-15-11
#define d_cCoccinfo1 aApp[11,160] // Array location reserved // PC BDJ 05-15-11
#define d_cCoccinfo2 aApp[11,161] // Array location reserved // PC BDJ 05-15-11
#define d_cCoccinfo3 aApp[11,162] // Array location reserved // PC BDJ 05-15-11
#define d_cCoccinfo4 aApp[11,163] // Array location reserved // PC BDJ 05-15-11
#define d_cCocctext1 aApp[11,164] // Array location reserved // PC BDJ 05-15-11
#define d_cCocctext2 aApp[11,165] // Array location reserved // PC BDJ 05-15-11
#define d_cCocctext3 aApp[11,166] // Array location reserved // PC BDJ 05-15-11
#define d_cCocctext4 aApp[11,167] // Array location reserved // PC BDJ 05-15-11
#define d_sCredtable aApp[11,168] // Array location reserved // PC BDJ 06-02-11
#define d_cEarnclass aApp[11,169] // Array location reserved // PC BDJ 06-02-11
#define d_cScrdclass aApp[11,170] // Array location reserved // PC BDJ 06-02-11
#define d_cSpecscore aApp[11,171] // Array location reserved // PC BDJ 06-02-11
#define d_cAcctcoll aApp[11,172] // Array location reserved // PC FIS 03-16-12
#define d_dAdliciss aApp[11,173] // Array location reserved // PC FIS 04-02-12
#define d_dCadliciss aApp[11,174] // Array location reserved // PC FIS 04-02-12
#define d_dAdlicexp aApp[11,175] // Array location reserved // PC FIS 04-02-12
#define d_dCadlicexp aApp[11,176] // Array location reserved // PC FIS 04-02-12
#define d_cAppnum aApp[11,177] // Array location reserved // PC CAW 05-22-12
#define d_xUnused178 aApp[11,178] // Array location reserved
#define d_xUnused179 aApp[11,179] // Array location reserved
#define d_xUnused180 aApp[11,180] // Array location reserved
#define d_xUnused181 aApp[11,181] // Array location reserved
#define d_xUnused182 aApp[11,182] // Array location reserved
#define d_xUnused183 aApp[11,183] // Array location reserved
#define d_xUnused184 aApp[11,184] // Array location reserved
#define d_xUnused185 aApp[11,185] // Array location reserved
#define d_xUnused186 aApp[11,186] // Array location reserved
#define d_xUnused187 aApp[11,187] // Array location reserved
#define d_xUnused188 aApp[11,188] // Array location reserved
#define d_xUnused189 aApp[11,189] // Array location reserved
#define d_xUnused190 aApp[11,190] // Array location reserved
#define d_xUnused191 aApp[11,191] // Array location reserved
#define d_xUnused192 aApp[11,192] // Array location reserved
#define d_xUnused193 aApp[11,193] // Array location reserved
#define d_xUnused194 aApp[11,194] // Array location reserved
#define d_xUnused195 aApp[11,195] // Array location reserved
#define d_xUnused196 aApp[11,196] // Array location reserved
#define d_xUnused197 aApp[11,197] // Array location reserved
#define d_xUnused198 aApp[11,198] // Array location reserved
#define d_xUnused199 aApp[11,199] // Array location reserved
#define d_xUnused200 aApp[11,200] // Array location reserved
#define d_oMsgbox aApp[14] // Array location reserved
#define d_oStatstatic aApp[15] // Array location reserved
#define d_oStatbar aApp[16] // Array location reserved
#define d_oBlinkmsg aApp[17] // Array location reserved
#define d_nSaverecord aApp[21] // Array location reserved
#define d_aNtabs aApp[22] // Array location reserved
#define d_aOtabs aApp[23] // Array location reserved
#define d_lPakapps aApp[24] // Array location reserved
#define d_lPakahist aApp[25] // Array location reserved
#define d_lPakappmemo aApp[26] // Array location reserved
#define d_cSaveorder aApp[28] // Array location reserved
#define d_lDisablef12 aApp[29] // Array location reserved // PC FIS 04-24-07
#define d_lPakappadata aApp[30] // PC BDJ 08-03-11
#define d_oTabpage1 aApp[50]
#define d_oTabstatic1 aApp[51]
#define d_oPagegroup1 aApp[52]
#define d_oSeekkey aApp[53]
#define d_oBrowse aApp[54]
#define d_oTabpage2 aApp[60]
#define d_oTabstatic2 aApp[61]
#define d_oPagegroup2 aApp[62]
#define d_oAccountgroup aApp[63]
#define d_oState aApp[64] // PC CAW 03-11-05
#define d_oStatecode aApp[65]
#define d_oStatusgroup aApp[66]
#define d_oA1occupat aApp[67] // PC CAW 12-29-07 // PC FIS 10-08-08
#define d_oApproved aApp[68]
#define d_oA2occupat aApp[69] // PC FIS 12-29-07 // PC FIS 10-08-08
#define d_oDealernum aApp[70]
#define d_oFname aApp[73] // PC FIS 05-12-05
#define d_oLname aApp[74] // PC FIS 05-12-05
#define d_oCoappfname aApp[75] // PC FIS 05-12-05
#define d_oCoapplname aApp[76] // PC FIS 05-12-05
#define d_oAdd1 aApp[77] // PC FIS 05-12-05
#define d_oCity aApp[78] // PC FIS 05-12-05
#define d_oZip aApp[79] // PC FIS 05-12-05
#define d_oBirdate1 aApp[80] // PC FIS 05-12-05
#define d_oBirdate2 aApp[81] // PC FIS 05-12-05
#define d_cBought aApp[82]
#define d_oRelation aApp[83] // PC FIS 03-02-06
#define d_oEquiptype aApp[84] // PC FIS 03-02-06
#define d_cDealernum aApp[86] // PC FIS 12-12-06
#define d_cStatecode aApp[87] // PC CAW 05-27-07
#define d_cSsn1temp aApp[88] // PC FIS 04-24-07
#define d_cSsn2temp aApp[89] // PC FIS 04-24-07
#define d_oSsn1 aApp[90] // PC FIS 04-24-07
#define d_oSsn2 aApp[91] // PC FIS 05-10-07
#define d_oServicing aApp[99] // PC FIS 11-14-07
#define d_lMtgincrease aApp[100] // PC CAW 11-29-07
#define d_oPagegroup2a aApp[101]
#define d_oAadd_1 aApp[102] // PC BDJ 02-06-09 Reclaimed numbers
#define d_oAcity aApp[103] // PC BDJ 02-06-09 Reclaimed numbers
#define d_oAstate aApp[104] // PC BDJ 02-06-09 Reclaimed numbers
#define d_oAzip aApp[105] // PC BDJ 02-06-09 Reclaimed numbers
#define d_oAh_phone aApp[106] // PC BDJ 02-06-09 Reclaimed numbers
#define d_lAddanswered aApp[107] // PC BDJ 02-06-09
#define d_lPhoneanswered aApp[108] // PC BDJ 02-06-09
#define d_oCinvoice aApp[109] // PC BDJ 02-09-11
#define d_oProdcode1 aApp[110] // PC FIS 03-16-12
#define d_oDlbutton1 aApp[111] // PC FIS 04-02-12
#define d_oDlbutton2 aApp[112] // PC FIS 04-02-12
#define d_oTabpage3 aApp[115]
#define d_oTabstatic3 aApp[116]
#define d_oPagegroup3 aApp[117]
#define d_oCommentbrowse aApp[118]
#define d_oPagegroup3a aApp[119]
#define d_oTabpage4 aApp[120] // PC FIS 10-08-08
#define d_oTabstatic4 aApp[121] // PC FIS 10-08-08
#define d_oPagegroup4 aApp[122] // PC FIS 10-08-08
#define d_oCalcgroup aApp[123]
#define d_oLsubadjapr aApp[124]
#define d_oLovrautdec aApp[125]
#define d_oSellprice aApp[126]
#define d_oRestype aApp[127] // PC FIS 03-02-06
#define d_oNmrecdbuyr aApp[128] // PC CAW 06-14-07
#define d_oTmthpay aApp[129] // PC CAW 11-29-07
#define d_oSubjadj aApp[130] // PC CAW 02-14-08
#define d_oPymtterms aApp[131] // PC FIS 06-30-08
#define d_cAppnames aApp[132] // PC FIS 10-08-08
#define d_oSecondarygroup aApp[133] // PC CAW 11-20-08
#define d_oSendstatic aApp[134] // PC CAW 11-20-08
#define d_oCrdetdate aApp[135] // PC CAW 10-12-10
#define d_oPagegroup4a aApp[136]
#define d_oProdcode2 aApp[137] // PC FIS 03-16-12
#define d_oTabpage5 aApp[140]
#define d_oTabstatic5 aApp[141]
#define d_oPagegroup5 aApp[142]
#define d_oConditiongroup aApp[143]
#define d_oOtherinfogroup aApp[144]
#define d_oVerifygroup aApp[145]
#define d_oVdate aApp[146]
#define d_oRelfriend aApp[147] // PC FIS 06-13-05
#define d_oSubprimegroup aApp[148] // PC FIS 11-05-08 replaced d_oIncomesource
#define d_oServicinggroup aApp[149] // PC FIS 11-14-07
#define d_oPagegroup5a aApp[150]
#define d_oTabpage6 aApp[151]
#define d_oTabstatic6 aApp[152]
#define d_oPagegroup6 aApp[153]
#define d_oPagegroup6a aApp[154]
#define d_oTermsgroup aApp[155]
#define d_oAchgroup aApp[156]
#define d_oCcgroup aApp[157]
#define d_oOverachamt aApp[158]
#define d_oAchstrdate aApp[159]
#define d_oBankrnum aApp[160]
#define d_oBankanum aApp[161]
#define d_oOveracham2 aApp[162]
#define d_oBankrnum2 aApp[163]
#define d_oBankanum2 aApp[164]
#define d_oDnachdate aApp[165]
#define d_oNachdayom1 aApp[166]
#define d_oCachcycle aApp[167]
#define d_oWhosoldach aApp[168]
#define d_cBankrtemp1 aApp[169] // PC BDJ 08-03-11
#define d_cBankatemp1 aApp[170] // PC BDJ 08-03-11
#define d_cBankrtemp2 aApp[171] // PC BDJ 08-03-11
#define d_cBankatemp2 aApp[172] // PC BDJ 08-03-11
#define d_cCrcardtemp aApp[173] // PC BDJ 08-03-11
#define d_cCrcmthtemp aApp[174] // PC BDJ 08-03-11
#define d_cCrcyrtemp aApp[175] // PC BDJ 08-03-11
#define d_cCrcnametemp aApp[176] // PC BDJ 08-03-11
#define d_oCcnum aApp[177] // PC BDJ 08-03-11
#define d_oExpdate aApp[178] // PC BDJ 08-03-11
#define d_oNameoncard aApp[179] // PC BDJ 08-03-11
#define d_oNccdayom1 aApp[180] // PC BDJ 08-03-11
#define d_oNccdayom2 aApp[181] // PC BDJ 08-03-11
#define d_oNccdayom3 aApp[182] // PC BDJ 08-03-11
#define d_oNccdayom4 aApp[183] // PC BDJ 08-03-11
#define d_oNccoveramt aApp[184] // PC BDJ 08-03-11
#define d_oNapr aApp[185] // PC BDJ 08-03-11
#define d_oNmth_pay aApp[186] // PC BDJ 08-03-11
#define d_oCcontdate aApp[187] // PC BDJ 08-03-11
#define d_oFpaydate aApp[188] // PC BDJ 08-03-11
#define d_nPriorapr aApp[189] // PC BDJ 08-03-11
#define d_nPriormthpay aApp[190] // PC BDJ 08-03-11
#define d_nPriornumpay aApp[191] // PC BDJ 08-03-11
#define d_nPrioramtreq aApp[192] // PC BDJ 08-03-11
#define d_lPriorcontinfo aApp[193] // PC BDJ 08-03-11
#define d_oVdate6 aApp[194] // PC FIS 01-26-12
#define d_oTabpage7 aApp[200]
#define d_oTabstatic7 aApp[201]
#define d_oPagegroup7 aApp[202]
#define d_oProgramgroup1 aApp[204]
#define d_oProgramgroup2 aApp[205]
#define d_oProgramgroup3 aApp[206]
#define d_oProgramgroup4 aApp[207]
#define d_cText1 aApp[208]
#define d_cText1a aApp[209]
#define d_cText2 aApp[210]
#define d_cText2a aApp[211]
#define d_cText3 aApp[212]
#define d_cText3a aApp[213]
#define d_cText4 aApp[214]
#define d_cText4a aApp[215]
#define d_oContractgroup aApp[216]
#define d_oPagegroup7a aApp[219]
#define d_oTabpage8 aApp[220]
#define d_oTabstatic8 aApp[221]
#define d_oPagegroup8 aApp[222]
#define d_oDate aApp[223] // PC FIS 01-30-08 was 143
#define d_oCreditgroup aApp[224] // PC FIS 01-30-08
#define d_oOthergroup aApp[225] // PC FIS 02-08-08
#define d_oPagegroup8a aApp[226]
#define d_lFlag aApp[230] // PC CAW 05-02-04 LOCK RELEASE TEST
#define d_nRecnum aApp[231] // PC CAW 05-02-04 LOCK RELEASE TEST
#define d_cWkappnum aApp[232]
#define d_lDisplayerror aApp[233]
#define d_lTransferred aApp[234] // PC FIS 01-14-08
#define d_aApprcond aApp[235] // PC FIS 10-28-08
#define d_aDenlcond aApp[236] // PC FIS 10-28-08
#define d_bEvalstips aApp[237] // PC FIS 10-28-08
#define d_cDealapass aApp[238] // PC CAW 01-14-11
#define d_lUnlock aApp[239] // PC CAW 01-14-11
#define d_cLappnum aApp[240] // PC CAW 01-14-11
#define d_oPagestatic aApp[250] // PC BDJ 09-01-11
#define d_oPaperworkgroup aApp[251] // PC BDJ 09-01-11
#define d_oProblemgroup aApp[252] // PC BDJ 09-01-11
#define d_lFcaopt100 aApp[253] // PC FIS 03-16-12
#define d_oDlicnum1 aApp[254] // PC FIS 04-13-12 on tabpage 2
#define d_oDlicnum2 aApp[255] // PC FIS 04-13-12 on tabpage 2
*+±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
*+
*+ STATIC FUNCTION S_DoCheckValid(abort, aApp, GetList)
*+
*+ Checks for whether special conditions are met prior to saving record
*+
*+±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
*+
STATIC FUNCTION S_DoCheckValid(abort, aApp, GetList)
// LOCAL aChecks := { {2,d_oStatecode, {|| LB_bvalexp({||!(empty(m->cstatecode).AND.m->approved=='A')},, ;
// "Missing state code for approved application")} }, ;
LOCAL aChecks := { {2,d_oStatecode, {|| LB_bvalexp({||!empty(m->cstatecode)},, ; // PC CAW 08-06-07 changed to checking always
"Missing contract state code")} }, ; // PC CAW 08-06-07
{2,d_oStatecode, {|| LB_bvalexp({|| m->cstatecode==d_cStatecode},, ; // PC CAW 08-06-07
"Contract state code has not been validated")} }, ; // PC CAW 08-06-07
{2,d_oStatecode, {|| AC_IsRevolveState(m->cstatecode,m->ccrtype)} }, ; // PC CAW 07-25-07
{2,d_oState, {|| LB_bvalexp( {|x| OtherState(x) .or. ; // PC CAW 03-11-05
cx_ISSTATE(x,1)},m->state,"Invalid State Code" )} }, ;
{2,d_oStatecode, {|| LB_bvalexp( {|x| OtherState(x) .or. ;
cx_ISSTATE(x,1)},m->cStateCode,"Invalid State Code" )} }, ; // PC CAW 03-11-05
{2,d_oDealernum, {|| LB_bvalexp({||!empty(m->dealernum)},, ;
"Missing dealer number")} }, ;
{2,d_oDealernum, {|| AC_ValidateDealerState(m->dealernum, m->cstatecode, ; // PC FIS 07-23-07
@m->cdlrovinit,m->G_cCredOPass,.T.,.T.,.F.)} },; // PC FIS 07-30-07 added m->cdlrovinit,m->G_cCredOPass
{2,d_oFname, {|| LB_bvalexp({||!empty(m->custfname)},, ; // PC FIS 05-12-05
"Missing customer first name") .AND. ; // PC FIS 05-12-05
AC_CheckName(m->custfname,.T.)} }, ; // PC FIS 05-12-05
{2,d_oLname, {|| LB_bvalexp({||!empty(m->custlname)},, ; // PC FIS 05-12-05
"Missing customer last name") .AND. ; // PC FIS 05-12-05
AC_CheckName(m->custlname,.T.)} }, ; // PC FIS 05-12-05
{2,d_oCoappfname, {|| AC_CheckName(m->coappfname,.T.) }}, ; // PC FIS 05-12-05
{2,d_oCoapplname, {|| AC_CheckName(m->coapplname,.T.) }}, ; // PC FIS 05-12-05
{2,d_oRelation, {|| IIF(EMPTY(m->coappfname),.T., ; // PC FIS 03-02-06 // PC FIS 03-10-06 // PC CAW 07-06-09 added back in
LB_bvalexp({||!empty(m->crelation)},, ; // PC FIS 03-02-06 // PC FIS 03-10-06
"Missing relationship") ) }}, ; // PC FIS 03-02-06 // PC FIS 03-10-06
{2,d_oSsn1, {|| LB_bvalexp({|x|!'*' $ x}, m->SSN1, ; // PC FIS 05-10-07
"SSN contains a *, Cancel edit and call IT immediately")} }, ; // PC FIS 05-10-07
{2,d_oSsn2, {|| LB_bvalexp({|x|!'*' $ x}, m->SSN2, ; // PC FIS 05-10-07
"SSN contains a *, Cancel edit and call IT immediately")} }, ; // PC FIS 05-10-07
{2,d_oSsn1, {|| LB_bvalexp({||!empty(m->SSN1).OR.m->lIscanada},, ; // PC FIS 05-12-05 // PC CAW 08-23-06 added liscanada exclusion
"Missing customer SSN1")} }, ; // PC FIS 05-12-05
{2,d_oSsn2, {|| LB_bvalexp({||!(empty(m->SSN2) .AND. !empty(m->coappfname)) ; // PC FIS 04-13-12
.OR. m->lIscanada},, ; // PC FIS 04-13-12
"Missing customer SSN2")} }, ; // PC FIS 04-13-12
;// {2,d_oDealernum, {|| LB_bvalexp({||!(empty(m->dlicnum1).AND.CONFIG->lReqDLicNm)},, ; // PC CAW 01-04-05 added next 2 checks
{2,d_oDlicnum1 , {|| LB_bvalexp({||!(empty(m->dlicnum1).AND.CONFIG->lReqDLicNm)},, ; // PC CAW 01-04-05 added next 2 checks // PC FIS 04-13-12
"Missing driver's license number #1")} }, ;
;// {2,d_oDealernum, {|| LB_bvalexp({||!(empty(m->dlicnum2).AND.CONFIG->lReqDLicNm.AND.!empty(m->coappfname))},, ;
{2,d_oDlicnum2, {|| LB_bvalexp({||!(empty(m->dlicnum2).AND.CONFIG->lReqDLicNm.AND.!empty(m->coappfname))},, ; // PC FIS 04-13-12
"Missing driver's license number #2")} }, ;
{2,d_oCinvoice, {|| LB_bvalexp({||!(empty(m->cinvoice).AND.DEALER->lreqinv.AND.d_lAddmode)},, ; // PC CAW 02-09-11
"Missing reference number")} }, ;
{2,d_oEquiptype, {|| IIF(FCA_GetOption(OPT_REQUIRE_EQUIP_TYPE_HVAC) .AND. ; // PC CAW 03-21-12
AC_HVACDlr(m->dealernum), ; // PC FIS 03-02-06
LB_bvalexp({||!empty(m->cequiptype)},, ; // PC FIS 03-02-06
"Equipment Type cannot be blank"), ; // PC FIS 03-02-06
.T.) } }, ; // PC FIS 03-02-06
{2,d_oA1occupat, {|| iif(FCA_GetOption(OPT_REQUIRE_OCCUPATION) .AND. ; // PC CAW 12-29-07
(d_lAddmode .OR. !(m->ca1occupat==APPS->ca1occupat)), ; // PC CAW 12-29-07
LB_bvalexp({||!empty(m->ca1occupat)},, ; // PC CAW 12-29-07
"Applicant position cannot be blank"), ; // PC CAW 12-29-07
.T.) } }, ; // PC CAW 12-29-07
{2,d_oA2occupat, {|| iif(FCA_GetOption(OPT_REQUIRE_OCCUPATION) .AND. ; // PC CAW 12-29-07
!empty(m->CoAppFName) .AND. ; // PC CAW 12-29-07
(d_lAddmode .OR. !(m->ca2occupat==APPS->ca2occupat)), ; // PC CAW 12-29-07
LB_bvalexp({||!empty(m->ca2occupat)},, ; // PC CAW 12-29-07
"Co-applicant position cannot be blank"), ; // PC CAW 12-29-07
.T.) } }, ; // PC CAW 12-29-07
{2,d_oProdcode1, {|| LB_bvalexp({|| AC_ValProdCode(d_lAddmode,d_lFcaopt100, ; // PC FIS 03-16-12
APPS->whodetermn,m->dealernum, ; // PC FIS 03-16-12
APPS->acctcoll,m->acctcoll)},, ; // PC FIS 03-16-12
"You must select an active Product Code")} }, ; // PC FIS 03-16-12
{2,d_oDlbutton1, {|| AC_CheckDLDates(m->dlicnum1,m->dadliciss,m->dadlicexp,.F., ; // PC FIS 04-02-12
SPACE(40) )} }, ; // PC FIS 04-02-12
{2,d_oDlbutton2, {|| AC_CheckDLDates(m->dlicnum2,m->dcadliciss,m->dcadlicexp,.T., ; // PC FIS 04-02-12
m->coappfname)} }, ; // PC FIS 04-02-12
{4,d_oRestype, {|| iif(FCA_GetOption(OPT_REQUIRE_RESIDENCE_TYPE), ;
S_ValidateField(aApp, "Residence Type", m->crestype, ;
APPS->crestype ),.T.)} }, ; // PC CAW 08-16-06 // PC CAW 05-10-12 added FCA_GetOption()
{4,d_oApproved, {|| LB_bvalexp({|| !(m->approved == 'A' .AND. m->bought ) },, ; // PC FIS 07-16-07
"Cannot approve a cancelled application")} }, ; // PC FIS 07-16-07
{4,d_oApproved, {|| IIF(FCA_GetOption(OPT_CHK_CREDIT_APPROVAL_RULES), ; // PC FIS 07-16-07
S_EvalRules(aApp,m->credtable,.F.), .T.)} }, ; // PC FIS 07-16-07 // PC CAW 03-05-08 added .F. to S_EvalRules
{4,d_oApproved, {|| S_CheckFundFields(GetList)} }, ; // PC FIS 11-14-07 // PC FIS 01-14-08 GetList
{4,d_oTmthpay, {|| LB_bvalexp({|| !m->nmortgage>m->ntmthpay },, ; // PC CAW 11-29-07
"Mortgage amount exceeds total payments")} }, ; // PC CAW 11-29-07
{4,d_oCrdetdate, {|| LB_bvalexp({||!empty(m->dcrddetrmn)},, ; // PC CAW 10-12-10
"Credit determination date cannot be blank")} }, ; // PC CAW 10-12-10
{4,d_oSubjadj, {|| S_SubjAdjValidation(m->nESFactor, ; // FICO score factor // PC BDJ 02-04-08
m->nTIFactor, ; // Total Income Factor
m->nUDFactor, ; // Revolving Debt Factor
m->nYrJFactor, ; // Years on Job Factor
m->nYrRFactor, ; // Years at Residence Factor
m->nDRFactor, ; // Debt Ratio Factor
m->nPMFactor, ; // Payment method factor
m->nResFactor, ; // Residence type factor
m->nDPFactor, ; // Down Payment Factor
m->nTermFact, ; // Term Length Factor
m->nTrYrFact, ; // Trade years Factor
m->njointfact, ; // No Joint App Factor
m->noincfact, ; // Other Income Factor
m->nnusfact, ; // New UnSecured Debt Factor
m->nbankfact, ; // Bankruptcy factor
m->ncrtfact, ; // Credit Type Factor
m->nsprgfact, ; // Special Program Factor
m->nrndfact, ; // Rounding Factor
m->ncsfactor, ; // Custom Score Factor
m->nnonhofact, ; // Non-Homeowner Factor
m->nsubjadj)} }, ; // Subjective Adjustment Factor
{4,d_oSellprice, {|| S_ValidateCredLim(m->amtrequest,m->nApprAmt,m->credtable,aApp,m->ccrtype,iif(d_lAddmode,0,APPS->nApprAmt), m->approved)}},; // PC BDJ 04-11-08 // PC BDJ 04-11-08 // PC CAW 06-13-08 m->nappramt -> APPS->nappramt
{4,d_oPymtterms, {|| IIF(d_lAddmode .OR. !(m->num_pymt==APPS->num_pymt), ; // PC FIS 06-30-08
LB_bvalexp({|| iif(FCA_GetOption(OPT_REQUIRE_TERMS_CLOSED),;
m->num_pymt > 0 .OR. !m->ccrtype == 'C',.T.)},, ; // PC FIS 06-30-08
"Payment terms must be > 0 for Closed-end accounts"),; // PC FIS 06-30-08
.T.) } }, ; // PC FIS 06-30-08
{4,d_oProdcode2, {|| LB_bvalexp({|| AC_ValProdCode(d_lAddmode,d_lFcaopt100, ; // PC FIS 03-16-12
APPS->whodetermn,m->dealernum, ; // PC FIS 03-16-12
APPS->acctcoll,m->acctcoll)},, ; // PC FIS 03-16-12
"You must select an active Product Code")} }, ; // PC FIS 03-16-12
{6,d_oWhosoldach, {|| LB_bvalexp({|| !(m->mad_achflag .AND. empty(m->mad_csoldach)) },, ; // PC BDJ 05-15-11
"Who sold ACH cannot be blank if ACH flag is checked") }}, ;
{6,d_oAchstrdate, {|| LB_bvalexp({|| !(m->mad_achflag .AND. empty(m->mad_achstrdate)) },, ;
"Missing ACH Start Date") }}, ;
{6,d_oOverachamt, {|| LB_bvalexp({|| !(m->mad_achflag .AND. m->mad_overach .AND. iszero(m->mad_overachamt)) },, ;
"Override amount cannot be zero") }}, ;
{6,d_oBankrnum, {|| LB_bvalexp({|| !(m->mad_achflag .AND. empty(m->mad_bankrnum)) },, ;
"Missing Bank Routing Number") }}, ;
{6,d_oBankanum, {|| LB_bvalexp({|| !(m->mad_achflag .AND. empty(m->mad_bankanum)) },, ;
"Missing Bank Account Number") }}, ;
{6,d_oOveracham2, {|| LB_bvalexp({|| !(m->mad_achflag .AND. m->mad_overach2 .AND. iszero(m->mad_overacham2)) },, ;
"ACH Account #2-Override amount cannot be zero") }}, ;
{6,d_oBankrnum2, {|| LB_bvalexp({|| !(m->mad_achflag .AND. m->mad_overach2 .AND. empty(m->mad_bankrnum2)) },, ;
"ACH Account #2-Missing Bank Routing Number") }}, ;
{6,d_oBankanum2, {|| LB_bvalexp({|| !(m->mad_achflag .AND. m->mad_overach2 .AND. empty(m->mad_bankanum2)) },, ;
"ACH Account #2-Missing Bank Account Number") }}, ;
{6,d_oDnachdate, {|| LB_bvalexp({|| !(m->mad_achflag .AND. CONFIG->lACHExtype .AND. empty(m->mad_dnachdate)) },, ;
"Missing Next ACH Date") }}, ;
{6,d_oNachdayom1, {|| LB_bvalexp({|| AC_IsGoodACHDates(m->mad_achflag,CONFIG->lachextype,m->mad_cachcycle, ;
m->mad_nachdayom1,m->mad_nachdayom2,m->mad_nachdayom3,m->mad_nachdayom4)},, ;
"Missing Cycle Day Identifier") }}, ;
{6,d_oCachcycle, {|| LB_bvalexp({|| !(m->mad_achflag .AND. CONFIG->lACHExtype .AND. empty(m->mad_cachcycle)) },, ;
"Missing ACH Cycle Code") }}, ;
{6,d_oCcontdate, {|| LB_bvalexp({|| !(m->mad_lcontinfo .AND. empty(m->mad_ccont_date))},, ; // PC BDJ 08-03-11
'Contract data cannot be blank if contract terms flag is set') }}, ; // PC BDJ 08-03-11
{6,d_oFpaydate, {|| LB_bvalexp({|| iif(m->mad_lcontinfo,m->mad_fpay_date>= m->mad_ccont_date,.T.)},, ; // PC BDJ 08-03-11
'First payment date cannot be prior to contract date') }}, ; // PC BDJ 08-03-11
{6,d_oNmth_pay, {|| LB_bvalexp({|| iif(m->mad_lcontinfo,m->mad_mth_pay * m->num_pymt >= m->amtrequest,.T.) },, ; // PC BDJ 08-03-11
"Scheduled payments less than principal") }}, ; // PC BDJ 08-03-11
{6,d_oNapr, {|| S_ValAPR(m->mad_apr,d_nPriorapr,@m->mad_lapraprval,m->amtrequest,m->num_pymt, ; // PC BDJ 08-03-11
m->mad_mth_pay,m->ccrtype,m->mad_lcontinfo)}} ; // PC BDJ 08-03-11
}
RETURN NIL
Cliff.