Focal Point
[CLOSED]Flat File Master File from Version 7.7 Doesn't work in Version 8.0

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/9577000386

July 06, 2016, 10:32 AM
John_Edwards
[CLOSED]Flat File Master File from Version 7.7 Doesn't work in Version 8.0
I have a master file that connects to a flat file, that's been in use in Version 7.7 for years. I've moved it to Version 8 and it's skipping characters. Here's a sample:

FILENAME=TARIS_IMPORT, SUFFIX=FIX     ,
    DATASET=C:\T_DRIVE\WebFocusFTP\TarisData\TARISDLY.TXT, $
  SEGMENT=TARIS_IMPORT, SEGTYPE=S0, $
    FIELDNAME=RECORD_TYPE, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_TYPE, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_LOCATION_ID, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_OPER_ID, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_JULIAN_YY, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_JULIAN_DDD, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_SEQ_POSITION, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_DATE, USAGE=A10, ACTUAL=A10, $
    FIELDNAME=TRANS_TIME, USAGE=A6, ACTUAL=A6, $
    FIELDNAME=EFFECTIVE_DATE, USAGE=A10, ACTUAL=A10, $
    FIELDNAME=WORKSTATION_ID, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=MULTIPLE_IND, USAGE=A1, ACTUAL=A1, $
    FIELDNAME=LIEN_REC_FLAG, USAGE=A1, ACTUAL=A1, $
    FIELDNAME=VOID_CORR_FLAG, USAGE=A1, ACTUAL=A1, $



This is fixed-column data where each field occupies its space on the data line. The first field works correctly, pulling the first two characters. The second field pulls characters 7 and 8 instead of 3 and 4. The fields that follow skip various numbers of characters each time.

When I try to build the mfd from scratch using the synonym builder I get the exact same sort of formatting, and get the exact same error when I run.

Did I change a setting on the server back in 2012 that fixes this and don't remember? Or does Version 8 just do things differently and I'm missing something?

This message has been edited. Last edited by: <Emily McAllister>,



July 06, 2016, 11:57 AM
John_Edwards
More clues.

I replaced ACTUAL=A2 with ACTUAL=A2B and I got it to read the entire line correctly as it did in Version 7.

This message has been edited. Last edited by: John_Edwards,



July 07, 2016, 04:10 AM
Danny-SRL
John,

I REPROed your example.
Master:
  
FILENAME=JED, SUFFIX=FIX     ,
    DATASET=FOCALPOINT/JED.TXT, $
  SEGMENT=JED, SEGTYPE=S0, $
    FIELDNAME=RECORD_TYPE, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_TYPE, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_LOCATION_ID, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_OPER_ID, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_JULIAN_YY, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=TRANS_JULIAN_DDD, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_SEQ_POSITION, USAGE=A3, ACTUAL=A3, $
    FIELDNAME=TRANS_DATE, USAGE=A10, ACTUAL=A10, $
    FIELDNAME=TRANS_TIME, USAGE=A6, ACTUAL=A6, $
    FIELDNAME=EFFECTIVE_DATE, USAGE=A10, ACTUAL=A10, $
    FIELDNAME=WORKSTATION_ID, USAGE=A2, ACTUAL=A2, $
    FIELDNAME=MULTIPLE_IND, USAGE=A1, ACTUAL=A1, $
    FIELDNAME=LIEN_REC_FLAG, USAGE=A1, ACTUAL=A1, $
    FIELDNAME=VOID_CORR_FLAG, USAGE=A1, ACTUAL=A1, $


Data:
  
1234567890123456789012345678901234567890123456789
AABBCCCDDDEEFFFGGGHHHHHHHHHHIIIIIIJJJJJJJJJJKKLMN


fex:
  
-* File jed01.fex
TABLE FILE JED
PRINT *
END

Output:
  
  RECORD_TYPE  TRANS_TYPE  TRANS_LOCATION_ID  TRANS_OPER_ID  TRANS_JULIAN_YY  TRANS_JULIAN_DDD  TRANS_SEQ_POSITION  TRANS_DATE  TRANS_TIME  EFFECTIVE_DATE  WORKSTATION_ID  MULTIPLE_IND  LIEN_REC_FLAG  VOID_CORR_FLAG
  -----------  ----------  -----------------  -------------  ---------------  ----------------  ------------------  ----------  ----------  --------------  --------------  ------------  -------------  --------------
  12           34          567                890            12               345               678                 9012345678  901234      5678901234      56              7             8              9             
  AA           BB          CCC                DDD            EE               FFF               GGG                 HHHHHHHHHH  IIIIII      JJJJJJJJJJ      KK              L             M              N             

The output seems fine to me.
Do you have some special characters in your data?


Daniel
In Focus since 1982
wf 8.202M/Win10/IIS/SSA - WrapApp Front End for WF

July 07, 2016, 10:02 AM
John_Edwards
No special characters, and the skipped characters are dependable. That is, my first A2 field claims five characters on every line. When I change to the A2B for the ACTUAL data type the issue clears, A2B claims only 2 characters.

Your result is from version 8? I'm running Version 8 I-Way for this selection.

I'm kind of hoping that this is Version 8 tightening up the spec and this is a dependable solution, because I have two more clients due to go through Version 8 upgrade and "sometimes" isn't a concept I enjoy very much in coding.



July 11, 2016, 12:57 AM
Danny-SRL
John,

I looked in the documentation and I did not find an ACTUAL=AnB. What does it mean?
I am running WF 8.105. Could there be a problem with iWay?


Daniel
In Focus since 1982
wf 8.202M/Win10/IIS/SSA - WrapApp Front End for WF

July 11, 2016, 08:58 AM
John_Edwards
The B presumably stands for Byte and it indicates how many bytes the field consumes. I thought I found it via the synonym editor, but I just went to look to cite it here and I can't find it. I may have found it by searching tech support. I'll tell you this -- I didn't think of it myself.

This may be a setup issue, because the master file I use on the old system was created in I-Way version 7, but runs on I-Way version 8 (release 8008M) on the old system. The new machine is release 81M.

This message has been edited. Last edited by: John_Edwards,



July 11, 2016, 11:25 AM
John_Edwards
There's more going on here. I have a Dev server running the same source code, in theory an identical install, and I don't need to jump through these hoops. So there's something on this server that's not set up properly. I'm going to open a ticket.

Update -- ticket is open, but it appears to be all about the Code_Page setting in Native Language Support. It was set to Unicode on I-Way (likely for a reason, need to figure out why) but to 137 on WebFOCUS. I believe 137 is the default value.

The old master file now works, and in addition to that I'm getting MUCH faster write speeds to SQL*Server. Apparently the Unicode code_base really scrambles SQL*Server's brain.

Still experimenting with this.

This message has been edited. Last edited by: John_Edwards,