Wm601 Flat File Schemas recordWithNoID

I’ve searched the EDI Users Guide and the Flat File Schema Developers guide and I can not find any reference to recordWithNoID. I’ve also searched the readme.txt file and it’s not referenced as one of the items deprecated.

How do you create a schema to replace a template with recordWithNoID?

When you create a Flat files schema, you can specify the Default record structure in the Settings Tab. Apparently, when a record is identified as ‘recordWithNoID’, it automatically assigns to the default structure. It can be structure derived from a schema or a template.

FYI,

The solution turned out to be as follows:
Use pub.flatFile:convertToString as it will not place the record identifier (recordWithNoID) in the output vs. wm.b2b.edi:convertToString which does.
Use Field Extractor Nth Field and sequentially position your fields.
You do not require a Default Record. I think a default record is used to format Undefined Data but I’m not sure.

HTH

how to create a flat file from a document type without record identifier wm 6.0? I am new to wm6.0 . So please help me. Your help is greatly appreciated

Thanks,
Srivats

I got it. To create a flat file in wm 6.0 without record identifier, I followed these steps:

Created a dictionary as usual
Create the flat file schema and in the schema, I renamed the record name as ‘recordWithNoID’ and then after saving, generated a flat file structure.
Then mapped the relevant fields.
Looped over the documenttype and used convertToString…

Thanks to all,

Srivats

When creating a document from a flat file with no record ID’s (using webMethods Developer 6.1) I had to do the following:

  1. Create a FF dictionary containing the record definition containing each field (fixed position in my case) from the flat file. It was not necessary to name the record definition in the FF Dictionary with the string “recordWithNoID”.

  2. Create a FF schema to be used to parse the flat file. It was not necessary to name the record definition or even to create a record definition.

  3. On the “Flat File Definition” tab of the FF schema it was necessary to choose a default record from the dictionary by clicking on the “set” label in the properties window. You can clear the default record information by clicking on the “delete” label.

  4. Test the FF schema by using Test - Run (or CTRL-R) and choosing a flat file from your file system.

  5. Assuming your the record definition in your FF dictionary was correct you should see the parsed data in your results window. Interestingly, the name of the document that is the only child of the ffValues document was “recordWithNoID” even though I never specified this name in either my FF Dictionary or my FF Schema…

Mark

1 Like

Hello all,

a return to an old topic!!!  I'm trying to use what you're describing above and I got problem with it. 

I created a sample schema with 3 Record Definition AA, AB and AE and I set the whole thing for the recordWithNoID as for the default record. 

What I want to be able to do with this is treat a simple file with those values for example : 

AAtest1
ABtest1
ACtest1
ADtest1
ACtest1
ADtest1
AEtest1

So what I would expect it to do is actually return me the first segment AA, then AB, then AC and AD as a recordWithNoID and AE and that's what it's doing but it's returning me the AC and AD records underneath the AB record like if it was a sub-record of this one. 

I noticed when I create the DT from my schema that's it's actually adding the recordWithNoID as a document list (which is ok) "everywhere" in between each segment but inside every segments as well.  (sorry I'm on a client's pc and ain't got any tool to do a snagit of the screen) 

So when I'm trying to test the schema with the file above, my records AC and AD are all put underneath the record AB as a sub-segment of this one. 

Does anyone knows what I'm doing wrong?  What I want is to have those segments as a recordWithNoID as a seperate segment of it's own at the same level as AA, AB and AE. 

Thanks for your help.

Mathieu

Instead of using recordWithNoID option just define the AA,AB,AC/AD,AE as record definitions with newline as delimiter.

And AC has child segment AD according to your sample and AC will be repeating containing (AC[0]/AD and AC[1]/AD etc…

Please check this out.

Thanks,

No I got to use recordWithNoID or something like this because in my case I don’t know in which order I might receive the AC and AD segments and how many occurence of each I can receive. The AD segment is not a child segment of AC by the way, it’s really a segment on it’s own just like AC.

So I might receive something like this :
AAtest1
ABtest1
ACtest1
ACtest1
ADtest1
ACtest1
ADtest1
AEtest1

The only way I see it would really be to use this recordWithNoID but like I was saying, it’s treating all the AC and AD as a child of AB. I want to see if there a way not to have that recordWithNoID defined as a child on those AA, AB and AE segments!

Thanks!

Mathieu

Actually if you dont keep AD as child of AC then schema will not generate the results as expected and AC,AD segments will mess up.

Will you be always receving AA,AB,AC/AD,AE segments in the file?Then instead of recordWithNoID use these as record definitions.

Please see the attachment i created a TestSchema package which i described above,Check it out.

Sorry if it didn’t helped,

TestSchema
TestSchema.zip (4.2 k)

HTHm

make sure you are using convertToString in the wmFlatFile package and not the one in the wmEDI package.

Thanks Chris but I’m not even at that point yet, I’m trying to test the schema itself.

RMG, thanks for the helo too but that not it yet :wink: I will always receive AA, AB and AE but as for AC and AD, I’m not sure I will receive them and I’m not sure in which order. They can be there many times and in any order but always between AB and AE.

Thanks for your help.

Mathieu

Oh ok,
i will post it if i have some solution.

Even if AC/AD you didnt receive in the file the above sample schema work and will parse AA.AB,AE records.

HTH,

I ran into this problem a while back when migrating from 4.6 to 6.01 which we abandoned in favor of 6.1.

The issue with the recordWithNoID element being a sub element of the preceding element I believe has a fix for it on 6.01.

The reason I say this is that webMethods migrated a fix that was available on 6.01 to a 6.1 version. The fix on 6.1 is called IS_6-1_Fix5 and addresses a few issues with flat files.

If I was you I would contact webMethods to have them provide you with the 6.01 version of the fix to this problem.

I’m able to parse AA, AB and AE even when I got some AC and AD the only thing I want to do is get those AC and AD in a segment of their own when treated via the recordWithNoID…I don’t want to get them as a child of any segments.

Mathieu

Since AC/AD have multiple instances in the file i dont think schema will parse as a separate individual segments.

Please contact wm support if they have some fix for this problem as Daniel mentioned above.

Thanks,

Thank you all, I will check it out with webMethods and get back to you with an update in case you need this in the future!

Mathieu

I need some confirmation on this. Tech support is telling me that recordWithNoID is not supported in any 6.x version of webMethods. I know that’s not ture as I was able to do this prior to applying SP2.

Has anyone been able to create a working schema in 6.0.1 SP2 that works.

Here is what Tech support sent me. I’m basically disagreeing with their statement.
>>
I talked to our developer regarding this issue. As the 6.x version, you
can’t create a record called ‘recordWithNoId’ - this would not have worked
in ANY version of the 6.x flat file adapter.

Instead, declare the record in a dictionary as the way that I have already
suggested. I do understand that ‘recordWithNoId’ has not mentioned in the
6.x doc as not supported. The doc states the methods that we do support.
If you want the flat file doc to state that no support of ‘recordWithNoId’
in 6.x version, please let me know so I will put as a feature request.
<<
Thanks.