setting high date and PFCMARK
Bruce Easton
bruce at stn.com
Thu Apr 9 10:09:36 PDT 2009
Jose Lerebours wrote Thursday, April 09, 2009 12:20 PM:
>
> Richard D. Williams wrote:
> > Try this;
> >
> > If: dl ne ""
> > Then: end
> > If: q ne ""
> > Then: goto start
> > if:
> > Then: cls
> > If:
> > Then: input fa(4,#,g) "From Client Number "
> > If:
> > Then: input fb(4,#,g) "From "<fa<"to number "
> > If:
> > Then: input ff(8,mdy/,g) "Enter 1st date"
> > If:
> > Then: input ll(8,mdy/,g) "From"<ff<"to what ending date"
> > If: fa eq " " or fb eq " " or ff eq "" or ll eq ""
> > Then: msgbox "No Report Created!";exit
> > If:
> > Then: input popup ("22","") q(1,yesno,g) "Is this correct?
> (Y/N)";cls
> > If: q ne "Y"
> > Then: msgbox "No Report Created!";exit
> > If:
> > Then: lookup - k=ff i=h -ng
> > *start*: If: 18 gt ll
> > Then: goto endit
> > If: 1 ge fa and 1 le fb
> > Then: select
> > If:
> > Then: end
> > *endit*: If:
> > Then: dl(8,mdy/,g)="12/31/79"
> > If:
> > Then: lookup - k=dl i=h -nl
> > If:
> > Then: end
> >
>
> The first two lines of code should keep the script from
> asking the questions and performing the lookup more than once.
>
> I would make two changes
>
> (1) Add
> if: not -
> then: end
>
> right after the original lookup.
>
> (2) Additionally, I would not use a hard coded date to jump
> to possible last date, simply add a couple of years to end-date
>
> then: dl(8,mdy/,g)=ll+"1095" 'Add 3 years to end date
>
> By adding the three years to end date, no matter what your
> PFCMARK is set, it is less likely that your code will break
> (should it be ported to a different environment or PFCMARK
> have an unexpected value).
>
> Regards,
>
>
> Jose Lerebours
I frequently surprised by systems where people enter dates
way off into the future, either by accident, and in some cases,
to use the date field as a marker of some kind.
Therefore, regarding Jose's point #2, it might be safest to
have your selection flow like so (when working w/eight-
digit selection dates and using lookup-dash to speed rpt):
Then: qq(2,*)=getenv("PFCMARK")
If: qq eq ""
Then: goto XXXX 'PFCMARK missing--abort lu-dash; read all recs
If: qr eq ""
Then: qr(2,.0,g)=qq; qr=qr-"1"; dl(8,mdy/,g)="12/31/"{qr
If:
Then: 'continue here with lookup dash technique using 'dl'
.....
XXXX If: '(common selection tests without using lookup-dash)
Bruce
Bruce Easton
STN, Inc.
More information about the Filepro-list
mailing list