Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PROCEDURE produce-report:
- Actualorder = 0.
- DEF VAR newp AS LOG NO-UNDO.
- DEF VAR firstrec AS LOG NO-UNDO.
- DEF VAR firstof AS LOG NO-UNDO.
- DEF VAR SavedDate AS DATE NO-UNDO.
- SavedDate = ReportBeginDate.
- RUN startmeup.
- firstrec = yes.
- newp = no.
- FR-Mainloop:
- FOR EACH Hours BREAK
- BY hours.dateval
- BY Hours.locval
- BY hours.dayno
- BY hours.begintime:
- Actualorder = Actualorder + 1.
- newp = no.
- firstof = no.
- IF ActualOrder = DoNotExceed THEN DO:
- newp = yes.
- Actualorder = 0.
- END.
- print("font","helvetica",7,"").
- IF SavedDate <> hours.dateval OR
- currentlocationcode <> Hours.locval OR
- FIRST-OF(hours.dayno) OR newp THEN DO:
- FIND FRLocation NO-LOCK WHERE FRLocation.FacilityLocation = Hours.locval NO-ERROR.
- ASSIGN
- CurrentLocationCode = FRLocation.FacilityLocation
- CurrentLocation = FRLocation.ShortDescription .
- IF NOT firstrec THEN RUN setwspurp (hours.dateval).
- IF NOT firstrec THEN RUN end-page(no).
- RUN new-page (IF firstrec THEN no ELSE yes).
- ASSIGN
- SavedDate = hours.dateval
- firstof = yes .
- END. /*first-of(PrintCalendar.sort-order) or first-of(PrintCalendar.prtord)*/
- RUN print-detail (hours.Reservations,firstof).
- Print("Line", "4," + STRING((numperpage * lineinterval) + 51),1,"").
- IF LAST-OF(hours.dateval) OR LAST-OF(hours.dayno) THEN DO:
- y-last = max-pos.
- END. /*last-of(PrintCalendar.sort-order) */
- firstrec = no.
- END. /**FR-Mainloop**/
- RUN end-page(no).
- END PROCEDURE.
- PROCEDURE print-detail:
- DEF INPUT PARAMETER l1 AS CHAR EXTENT 8 NO-UNDO.
- DEF INPUT PARAMETER firstof AS LOG NO-UNDO.
- DEF VAR name-list AS CHAR EXTENT 8 NO-UNDO.
- DEF VAR phone-list AS CHAR EXTENT 8 NO-UNDO.
- DEF VAR MaxNum AS INT NO-UNDO.
- DEF VAR int64x AS INT64.
- Print("Set-Y","",y-last + 18,""). /***Center Time***/
- name-list = "".
- print("font","helvetica-bold",7,"").
- /* if lookup(l1,"CLOSED!!!,Location Lock!!!") gt 0 then*/
- /* print("Color","0.9,0.0,0.0",0,""). /*** Red ***/ */
- print("trim",STRING(hours.begintime,time-fmt),6,"").
- Print("Set-Y","",y-last + 9,"").
- print("font","helvetica",7,"").
- ix-loop:
- DO ix = 1 TO numperpage:
- IF l1[ix] = "" THEN NEXT ix-loop.
- DO int64x = 1 TO NUM-ENTRIES(l1[ix]):
- FIND FIRST SADetail NO-LOCK WHERE SADetail.ID = INT64(ENTRY(int64x,l1[ix])) NO-ERROR.
- IF AVAILABLE SADetail THEN DO:
- IF LOOKUP(SADetail.FirstName + " " + sadetail.lastname,name-list[ix]) = 0 THEN DO:
- ASSIGN
- name-list[ix] = list(SADetail.FirstName + " " + sadetail.lastname,name-list[ix])
- MaxNum = IF NUM-ENTRIES(name-list[ix]) GT maxnum THEN NUM-ENTRIES(name-list[ix]) ELSE maxnum.
- IF phone-list[ix] = "" THEN DO:
- IF SADetail.PhoneNumber GT "" THEN phone-list[ix] = STRING(SADetail.PhoneNumber).
- ELSE IF SADetail.HouseholdNumber NE 999999999 AND SADetail.HouseholdNumber <> internalHH AND
- SADetail.HouseholdNumber NE 0 THEN DO:
- FIND SAPerson NO-LOCK WHERE SAPerson.id = SADetail.PatronLinkID NO-ERROR.
- IF AVAILABLE SAPerson AND SAPerson.PrimaryPhoneNumber GT "" THEN ASSIGN
- phone-list[ix] = STRING(SAperson.primaryPhoneNumber).
- IF phone-list[ix] = "" THEN DO:
- FIND SAHousehold NO-LOCK WHERE SAHousehold.HouseholdNumber = SADetail.HouseholdNumber NO-ERROR.
- IF AVAILABLE SAHousehold AND SAHousehold.PrimaryPhoneNumber GT "" THEN ASSIGN
- phone-list[ix] = STRING(SAHousehold.primaryPhoneNumber).
- END.
- END.
- END.
- END.
- END.
- END.
- END.
- IF maxnum = 0 THEN maxnum = 1.
- DO ix = 1 TO numperpage:
- Print("Set-Y","",y-last + 9,"").
- print("trim",name-list[ix] + TrimValue,((ix - 1) * LineInterval) + 51 ,"").
- IF trueval(name-list[ix]) GT "" THEN DO:
- Print("Set-Y","",y-last + 18,"").
- print("trim",
- (IF printlandscape THEN "H'Cnt:" ELSE "Headcount: ") + STRING(NUM-ENTRIES(l1[ix])) + (IF trueval(phone-list[ix]) GT "" THEN
- (IF printlandscape AND legalsize NE "Legal" THEN ", Ph:" ELSE ", Phone: ") + phone-list[ix] ELSE "") + TrimValue, ((ix - 1) * LineInterval) + 51,"").
- END.
- END.
- /* Print("Set-Y","",y-last + 9,""). */
- /* print("Color","0.0,0.0,0.0",0,""). /*** Black ***/*/
- print("font","helvetica",7,"").
- ASSIGN
- y-last = y-last + 27
- cur-pos = cur-pos + 27
- max-pos = max(max-pos,cur-pos).
- Print("Set-Y","",y-last,"").
- END PROCEDURE.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement