|
Have you used <ctl> <M> to match the ifs and endifs? There are a lot of them. > -----Original Message----- > From: wdsci-l-bounces@xxxxxxxxxxxx > [mailto:wdsci-l-bounces@xxxxxxxxxxxx] On Behalf Of RPower@xxxxxxxxxx > Sent: Tuesday, July 12, 2005 11:24 AM > To: wdsci-l@xxxxxxxxxxxx > Subject: [WDSCI-L] Indentation issue or I'm losing my mind? > > I've got a program that I used the indentation feature on, > and it's giving me the error "Indentation Mismatch occurred". > But I don't see the problem. I'll post the code now, and > perhaps someone can copy/paste and see if they get the same > thing. I've double checked my if's and do's but to no > avail... perhaps I'm losing it... it is possible. > > H Dftname(Streets) Datedit(*YMD) Option(*Srcstmt:*NoDebugIo) > H Dftactgrp(*NO) Actgrp('QILE') > FStreetgarbuf e k Disk > FStreet05 if e k Disk > F Rename(Streetsr:Streets5) > F Prefix($) > FStreet03 if e k Disk > F Rename(Streetsr:Streets3) > F Prefix(#) > FCgararea o e k Disk Usropn > FWpuschedleo e k Disk Usropn > FList88 o f 132 Printer > F Oflind(*InOf) > ? // > D tabtm s 3 Dim(12) Ctdata Perrcd(1) > D tabac s 2 Dim(12) Alt(Tabtm) > ? // > D f1t s 34 Varying > ? // > D pos s 2 0 > D end_pos s 2 0 > D result s 34 Varying > D len s 2 0 > D f1_Key s 30 > D f1_Work s 30 > D counter s 4 0 > D rec_Count s 4 0 > D totals s 40 > D charDate s 8 > D strnm_Trimmed s 30 > D strnm_100a s 100 > D strnm_100b s 100 > D strnm_100c s 100 > D Cmd s 300A Inz > //-Define constant > fields-------------------------------------------------------- > D area1 c const('AREA 1') > D area2 c const('AREA 2') > D area3 c const('AREA 3') > D area4 c const('AREA 4') > D area5 c const('AREA 5') > D dontdo c const('DON''T DO') > D residents c const('(Residents') > D civic_no c const('(Civic') > //-------------------------------------------------- > // Procedure name: GetDate > // Purpose: Reformat the date > // Returns: > //-------------------------------------------------- > D GetDate PR LIKE(charDate) > D inDate LIKE(Date1) > //-------------------------------------------------- > //-------------------------------------------------- > // Procedure name: Get_Comments > // Purpose: Gets the street commments > // Returns: Street comments > //-------------------------------------------------- > D Get_Comments PR 40A > D inStreet 300A > //-------------------------------------------------- > // Procedure name: Qcmdexc > // Purpose: To allow the running of CL commands > // Returns: > // Parameter: Cmd => Command to run > // Parameter: CmdLen => Length of command to run > //-------------------------------------------------- > D QCmdExc PR EXTPGM('QCMDEXC') > D Cmd 3000A Const Options(*VARSIZE) > D CmdLen 15P 5 Const > D Cmddbcs 3A Const Options(*NOPASS) > //-------------------------------------------------- > ? // > /FREE > *InOf = *On; > // Clear out the existing data that may be in the files > Cmd = 'CLRPFM FILE(WPUSCHEDLE)'; > CallP(E) QCmdExc(Cmd:%Len(Cmd)); > Cmd = 'CLRPFM FILE(CGARAREA)'; > CallP(E) QCmdExc(Cmd:%Len(Cmd)); > Open Wpuschedle; > Open Cgararea; > // Loop thru all the records in the file > Read Streetgarb; > Dow Not %Eof(Streetgarb); > f1_Work = strnm; > rec_Count = rec_Count + 1; > // Check for '- P' and remove everything after > pos = 0; > pos = %Scan( '- P' : f1_Work:1 ); > If pos > 1; > f1t = %trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- P' and remove everything after > pos = 0; > pos = %Scan( '- P' : f1_Work:1 ); > If pos > 1; > f1t = %trim(f1_Work); > len = (pos - 1); > result = %subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- p' and remove everything after > pos = 0; > pos = %Scan( '- p ' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '-P' and remove everything after > pos = 0; > pos = %Scan( '-P' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- ped' and remove everything after > pos = 0; > pos = %Scan( '- ped' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- (p' and remove everything after > pos = 0; > pos = %Scan( '- (p' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- (pe' and remove everything after > pos = 0; > pos = %Scan( '- (ped' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '(p' and remove everything after > pos = 0; > pos = %Scan( ' (p' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '(M' and remove all after > pos = 0; > pos = %Scan( '(M' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '(A' and remove all after > pos = 0; > pos = %Scan( '(A' : f1_Work:1 ); > If pos > 1; > f1t = %trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '- (' and remove all after > pos = 0; > pos = %Scan( '- (' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for '(G' and remove everything after > pos = 0; > pos = %Scan( '(G' : f1_Work:1 ); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // Check for ' (' and remove everything after > pos = 0; > pos = %Scan( ' (' : f1_Work:1); > If pos > 1; > f1t = %Trim(f1_Work); > len = (pos - 1); > result = %Subst(f1_Work:1:len); > f1_Work = result; > EndIf; > // See what we can do about getting a street number for it > f1_Key = f1_Work; > Chain f1_Key Streets5; > If %Found(Street05); > cgstreet# = $cstret; > cgstseq# = 0; > cgstname = $cstact; > cgstext = *blanks; > cgcivics = *blanks; > cgcivice = *blanks; > cgstrcom = Get_Comments(strnm); > cgsp05a = Stid; > If area <> dontdo; > cggarbarea = %subst(area:6:1); > Else; > cggarbarea = *Blanks; > EndIf; > Write(E) Cgararear; > Dow %Error; > cgstseq# += 1; > Write(E) Cgararear; > EndDo; > pos = 0; > pos = %Scan(civic_no:strnm); > If pos > 1; > strnm_100a = %Subst(strnm:1:100); > strnm_100b = %Subst(strnm:101:100); > strnm_100c = %Subst(strnm:201:100); > If *Inof; > Except Header; > EndIf; > Except CivicDet; > EndIf; > If area <> dontdo; > Exsr Sched; > EndIf; > Else; > Chain f1_Key Streets3; > If %Found(Street03); > cgstreet# = #cstret; > cgstseq# = 0; > cgstname = #cstact; > cgstext = *blanks; > cgcivics = *blanks; > cgcivice = *blanks; > cgstrcom = Get_Comments(strnm); > cgsp05a = Stid; > If area <> dontdo; > cggarbarea = %subst(area:6:1); > Else; > cggarbarea = *Blanks; > EndIf; > Write(E) Cgararear; > Dow %Error; > cgstseq# += 1; > Write(E) Cgararear; > EndDo; > pos = 0; > pos = %Scan(civic_no:strnm); > If pos > 1; > strnm_100a = %Subst(strnm:1:100); > strnm_100b = %Subst(strnm:101:100); > strnm_100c = %Subst(strnm:201:100); > If *Inof; > Except Header; > EndIf; > Except CivicDet; > EndIf; > If area <> dontdo; > Exsr Sched; > EndIf; > Else; > counter = counter + 1; > If *InOf; > Except Header; > *InOf = *Off; > EndIf; > strnm_Trimmed = %Subst(strnm:1:30); > Except Detail; > EndIf; > EndIf; > Clear Cgararear; > f1_Key = *Blanks; > f1_Work = *Blanks; > Read Streetgarb; > EndDo; > Totals = %Char(counter) + ' ' + 'Records- > not found on STREETS file.'; > If *Inof; > Except Header; > EndIf; > Except Total_Line; > Close Wpuschedle; > Close Cgararea; > *InLr = *On; > > //------------------------------------------------------------ > --------- > // Build pickup schedule file > BegSr Sched; > Wpuyear = 2005; > Wpuarea = %subst(area:6:1); > Wpustr# = Cgstreet#; > Wpucnt11 = 1; > Wpuap#11 = 1; > Wpumax11 = 75; > Wpucnt12 = 1; > Wpuap#12 = 1; > Wpumax12 = 75; > Wpucnt13 = 1; > Wpuap#13 = 1; > Wpumax13 = 75; > Wpucnt21 = 1; > Wpuap#21 = 1; > Wpumax21 = 75; > Wpucnt22 = 1; > Wpuap#22 = 1; > Wpumax22 = 75; > Wpucnt23 = 1; > Wpuap#23 = 1; > Wpumax23 = 75; > Wpucnt31 = 1; > Wpuap#31 = 1; > Wpumax31 = 75; > Wpucnt32 = 1; > Wpuap#32 = 1; > Wpumax32 = 75; > Wpucnt33 = 1; > Wpuap#33 = 1; > Wpumax33 = 75; > Wpusp30a = *blanks; > Wpusp20a = *blanks; > Wpusp10a = *blanks; > Wpusp05a = Stid; > Wpusp01a = *blanks; > Wpusp92s = 0; > Wpusp72s = 0; > Wpusp52s = 0; > Wpusp90s = 0; > Wpusp70s = 0; > Wpusp50s = 0; > Wpusp30s = 0; > Wpusp10s = 0; > // > Select; > When area = area1; > Wpufrdte10 = 20050621; > Wputodte10 = 20050630; > charDate = GetDate(Date1); > Wpupudte11 = %Int(charDate); > charDate = GetDate(Date2); > Wpupudte12 = %Int(charDate); > Wpupudte13 = 0; > Wpufrdte20 = 20050801; > Wputodte20 = 20050805; > charDate = GetDate(Date3); > Wpupudte21 = %Int(charDate); > Wpupudte22 = 0; > Wpupudte23 = 0; > Wpufrdte30 = 20050906; > Wputodte30 = 20050909; > charDate = GetDate(Date4); > Wpupudte31 = %Int(charDate); > Wpupudte32 = 0; > Wpupudte33 = 0; > // > When area = area2; > Wpufrdte10 = 20050606; > Wputodte10 = 20050617; > charDate = GetDate(Date1); > Wpupudte11 = %Int(charDate); > charDate = GetDate(Date2); > Wpupudte12 = %Int(charDate); > Wpupudte13 = 0; > Wpufrdte20 = 20050725; > Wputodte20 = 20050729; > charDate = GetDate(Date3); > Wpupudte21 = %Int(charDate); > Wpupudte22 = 0; > Wpupudte23 = 0; > Wpufrdte30 = 20050829; > Wputodte30 = 20050902; > charDate = GetDate(Date4); > Wpupudte31 = %Int(charDate); > Wpupudte32 = 0; > Wpupudte33 = 0; > // > When area = area3; > Wpufrdte10 = 20050524; > Wputodte10 = 20050603; > charDate = GetDate(Date1); > Wpupudte11 = %Int(charDate); > charDate = GetDate(Date2); > Wpupudte12 = %Int(charDate); > Wpupudte13 = 0; > Wpufrdte20 = 20050718; > Wputodte20 = 20050722; > charDate = GetDate(Date3); > Wpupudte21 = %Int(charDate); > Wpupudte22 = 0; > Wpupudte23 = 0; > Wpufrdte30 = 20050822; > Wputodte30 = 20050826; > charDate = GetDate(Date4); > Wpupudte31 = %Int(charDate); > Wpupudte32 = 0; > Wpupudte33 = 0; > // > When area = area4; > Wpufrdte10 = 20050509; > Wputodte10 = 20050520; > charDate = GetDate(Date1); > Wpupudte11 = %Int(charDate); > charDate = GetDate(Date2); > Wpupudte12 = %Int(charDate); > Wpupudte13 = 0; > Wpufrdte20 = 20050712; > Wputodte20 = 20050715; > charDate = GetDate(Date3); > Wpupudte21 = %Int(charDate); > Wpupudte22 = 0; > Wpupudte23 = 0; > Wpufrdte30 = 20050815; > Wputodte30 = 20050819; > charDate = GetDate(Date4); > Wpupudte31 = %Int(charDate); > Wpupudte32 = 0; > Wpupudte33 = 0; > // > When area = area5; > Wpufrdte10 = 20050426; > Wputodte10 = 20050506; > charDate = GetDate(Date1); > Wpupudte11 = %Int(charDate); > charDate = GetDate(Date2); > Wpupudte12 = %Int(charDate); > Wpupudte13 = 0; > Wpufrdte20 = 20050704; > Wputodte20 = 20050708; > charDate = GetDate(Date3); > Wpupudte21 = %Int(charDate); > Wpupudte22 = 0; > Wpupudte23 = 0; > Wpufrdte30 = 20050808; > Wputodte30 = 20050812; > charDate = GetDate(Date4); > Wpupudte31 = %Int(charDate); > Wpupudte32 = 0; > Wpupudte33 = 0; > // > EndSl; > // write bulk record > Wpgtype = 'B'; > Write(e) Wpuschedlr; > // write metal record > Wpgtype = 'M'; > Wpumax11 = 50; > Wpumax12 = 50; > Wpumax13 = 50; > Wpumax21 = 50; > Wpumax22 = 50; > Wpumax23 = 50; > Wpumax31 = 50; > Wpumax32 = 50; > Wpumax33 = 50; > Write(e) Wpuschedlr; > EndSr; > > //------------------------------------------------------------ > --------- > /END-FREE > OList88 e Header 2 1 > O 55 'Streets > not found on > STREE- > O TS file' > // > O e Header 1 > O 5 'Rec #' > O 19 'Actual Field' > O 54 'Key Value' > // > O e Header 1 > O 5 '_____' > O 42 > '__________________________- > O ________' > O 75 > '__________________________- > O ____' > // > O e Detail 1 > O rec_Count k 6 > O strnm_Trimmed 42 > O f1_Work 75 > // > O e CivicDet 1 > O 'Civics > to be entered > for' > O +1 'street: ' > O e CivicDet 1 > O strnm_100a 130 > O e CivicDet 1 > O strnm_100b 130 > O e CivicDet 1 > O strnm_100c 130 > // > O e Total_Line 2 > O 6 'Total:' > O Totals 40 > > //-------------------------------------------------- > // Procedure name: GetDate > // Purpose: Reformat the date > // Returns: > //-------------------------------------------------- > P GetDate B > D GetDate PI LIKE(charDate) > D inDate LIKE(Date1) > // Local fields > D charMonth s 3 > D charDay s 2 > D retField S LIKE(charDate) > /FREE > charMonth = %Subst(inDate:1:3); > /END-FREE > C charMonth LookUp tabtm tabac > > 99 > /FREE > charDay = '00'; > EvalR charDay = %trim(%subst(inDate:5:2)); > retField = '2005' + tabac + charDay; > Return retField; > /END-FREE > P GetDate E > //-------------------------------------------------- > // Procedure name: GetDate > // Purpose: Reformat the date > // Returns: > //-------------------------------------------------- > P Get_Comments B > D Get_Comments PI 40A > D inStreet 300A > // Local fields > D retField S 40A > /FREE > pos = 0; > pos = %Scan(residents:inStreet); > If pos > 1; > end_pos = %Scan(')':inStreet:pos); > result = %Subst(inStreet:pos+1:end_pos-(pos+1)); > retField = %Trim(result); > Else; > retField = *Blanks; > EndIf; > Return retField; > /END-FREE > P Get_Comments E > ** > JAN01 > FEB02 > MAR03 > APR04 > MAY05 > JUN06 > JUL07 > AUG08 > SEP09 > OCT10 > NOV11 > DEC12 > > > > And the indent list with the problem is as follows for the section: > If pos > 1; > end_pos = %Scan(')':inStreet:pos); > result = > %Subst(inStreet:pos+1:end_pos-(pos+1)); > retField = %Trim(result); > Else; > | retField = *Blanks; > EndIf; > > The If doesn't line up with anything.... > > TIA, > > Ron Power > Programmer > Information Services > City Of St. John's, NL > P.O. Box 908 > St. John's, NL > A1C 5M2 > Tel: 709-576-8132 > Email: rpower@xxxxxxxxxx > Website: http://www.stjohns.ca/ > ______________________________________________________________ > _____________ > Success is going from failure to failure without a loss of > enthusiasm. - Sir Winston Churchill > -- > This is the Websphere Development Studio Client for iSeries > (WDSCI-L) mailing list To post a message email: > WDSCI-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change > list options, > visit: http://lists.midrange.com/mailman/listinfo/wdsci-l > or email: WDSCI-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/wdsci-l. > ***************************** NOTICE: All e-mail sent to or from this e-mail address will be received or otherwise recorded by The Sharper Image corporate e-mail system and is subject to archival, monitoring, and review by and/or disclosure to Sharper Image security and other management. This message is intended only for the use of the addressee and may contain information that is privileged and confidential. The contents of this message may contain personal views which are not the views of The Sharper Image. If you are not the intended recipient, dissemination of this communication is prohibited. *****************************
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.