Best way to find mismatch in T24

  • kda
  • Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
13 years 5 months ago #11339 by kda
Dear All,

Could you please guide me, generally here when we want to know system has any mismatch we all way go to desktop -> report -> list of report -> put criteria REPORT.NAME LK CRD... -> then view one by one of all branches (our branch around 50 branches)to find mismatch as MM, LD, MG ..., it is so taking time. Do we have way to do this better than?

Thank in advance

Please Log in or Create an account to join the conversation.

  • jpb
  • jpb's Avatar
  • Offline
  • Moderator
  • Moderator
  • retired . . . ¯\_(ツ)_/¯
More
13 years 5 months ago #11373 by jpb
Replied by jpb on topic Re: Best way to find mismatch in T24
We use a routine to scan certain reports (in fact as part of a NOFILE enquiry) after COB.
Has to be reviewed / amended after installing any release ...
SUBROUTINE E.NOFILE.SYS.STATUS(OUT.ARRAY)
...
    CHECK.NAME = "CRD.xxxxx"
    GOSUB CHECK.CRD
...
CHECK.CRD:
    LWD = TODAY
    CALL CDT(R.COMPANY(EB.COM.BATCH.HOLIDAY),LWD,"-1W")
    LWD.JUL = ''
    CALL JULDATE(LWD,LWD.JUL)

    SEL.STMT       = 'SELECT ':FN.HOLD.CONTROL:' WITH RUN.IN.BATCH EQ "Y" AND BANK.DATE EQ "':LWD:'" AND COMPANY.ID EQ "':ID.COMPANY:'" AND REPORT.NAME EQ "':REP.NAME:'" BY.DSND @ID'
    LIST.OF.HC.IDS = ''
    TOT.HC.IDS     = 0
    CALL EB.READLIST(SEL.STMT,LIST.OF.HC.IDS,'',TOT.HC.IDS,'')

    IF NOT(LIST.OF.HC.IDS) THEN
        PARAM1.NAME  = 'HOLD.CONTROL record exists'
        PARAM1.VALUE = 'no'
        CHECK.VALUE  = 'NOT.OK'
        ACTION.VALUE = 'Check HOLD.CONTROL integrity'
        GOSUB ADD.ONE.LINE
        RETURN
    END
    FN.REP = LIST.OF.HC.IDS<1>  ;* assuming we are only interested in the latest report found
    OPENSEQ "&HOLD&",FN.REP READONLY TO F.REP ELSE
        PARAM1.NAME  = '&HOLD& file exists'
        PARAM1.VALUE = 'no'
        DIFF.VALUE   = FN.REP
        CHECK.VALUE  = 'NOT.OK'
        ACTION.VALUE = 'Check &HOLD&/VOC integrity'
        GOSUB ADD.ONE.LINE
        RETURN
    END
    DRILL.VALUE = "VIEW &HOLD&>":FN.REP
    FOUND.MISMATCH = 0
    LOOP
        READSEQ ONE.LINE FROM F.REP THEN
            CONSOL.KEY.APP = LEFT(TRIM(ONE.LINE),3)
            BEGIN CASE
            CASE CONSOL.KEY.APP = 'AC.'
            CASE CONSOL.KEY.APP = 'FD.'
            CASE CONSOL.KEY.APP = 'FX.'
            CASE CONSOL.KEY.APP = 'LD.'
            CASE CONSOL.KEY.APP = 'MD.'
            CASE CONSOL.KEY.APP = 'MM.'
            CASE CONSOL.KEY.APP = 'PL.'
            CASE CONSOL.KEY.APP = 'RE.'
            CASE CONSOL.KEY.APP = 'SC.'
            CASE CONSOL.KEY.APP = 'SW.'
            CASE 1
                CONTINUE
            END CASE
            CONSOL.KEY.ID = FIELD(TRIM(ONE.LINE),' ',1)
            CONTRACT.AMT = TRIM(ONE.LINE[55,19])
            CHANGE ',' TO '' IN CONTRACT.AMT
            CRF.AMT = TRIM(ONE.LINE[75,19])
            CHANGE ',' TO '' IN CRF.AMT
            DIFF.AMT = TRIM(RIGHT(ONE.LINE,19))
            CHANGE ',' TO '' IN DIFF.AMT
            IF NOT(DIFF.AMT) THEN CONTINUE
            FOUND.MISMATCH = 1
            PARAM1.NAME  = 'Consol Key'
            PARAM1.VALUE = CONSOL.KEY.ID
            PARAM2.NAME  = 'Contract ':FMT(CONTRACT.AMT,"R2,")
            PARAM2.VALUE = 'CRF ':FMT(CRF.AMT,"R2,")
            DIFF.VALUE   = FMT(DIFF.AMT,"R2,")
            CHECK.VALUE  = 'NOT.OK'
            ACTION.VALUE = "please check mismatch"
            GOSUB ADD.ONE.LINE
        END ELSE
            EXIT
        END
    REPEAT
    CLOSESEQ F.REP

    IF NOT(FOUND.MISMATCH) THEN
        PARAM1.NAME  = 'Mismatches'
        PARAM1.VALUE = 'not found'
        PARAM2.NAME  = ''
        PARAM2.VALUE = ''
        ACTION.VALUE = ''
        DIFF.VALUE   = ''
        CHECK.VALUE  = ''
        GOSUB ADD.ONE.LINE
    END

    RETURN

...

 ADD.ONE.LINE:
     ONE.LINE    = ''
     ONE.LINE<1> = BOOK.CODE
     ONE.LINE<2> = CHECK.NAME
     ONE.LINE<3> = PARAM1.NAME
     ONE.LINE<4> = PARAM1.VALUE
     ONE.LINE<5> = PARAM2.NAME
     ONE.LINE<6> = PARAM2.VALUE
     ONE.LINE<7> = DIFF.VALUE
     ONE.LINE<8> = CHECK.VALUE
     ONE.LINE<9> = ACTION.VALUE
     ONE.LINE<10>= DRILL.VALUE
     CONVERT '*' TO ' ' IN ONE.LINE
     CONVERT FM TO "*" IN ONE.LINE
     OUT.ARRAY<-1> = ONE.LINE

     RETURN

Please Log in or Create an account to join the conversation.

  • kda
  • Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
13 years 5 months ago #11385 by kda
Replied by kda on topic Re: Best way to find mismatch in T24
thank you very much jpb
But want to confirm you for keyword search mismatch if only AC. LD. ...
is it enough ? And if we search with .TR. possible or not?

Please Log in or Create an account to join the conversation.

  • jpb
  • jpb's Avatar
  • Offline
  • Moderator
  • Moderator
  • retired . . . ¯\_(ツ)_/¯
More
13 years 5 months ago #11393 by jpb
Replied by jpb on topic Re: Best way to find mismatch in T24
Amend the search as you need it . . .

Please Log in or Create an account to join the conversation.

Time to create page: 0.036 seconds