THE EDI for the IBMi FORUM
(This is where we can share our Challenges, Analyses and Solutions freely; and for free)
Discussions on the Trusted Link 4 i EDI Software
#TrustedLink #edi #IBMi #iSeries #AS400 #System3x
Subscribe to keep this site alive! Under new management but as always, still 100% FREE. Anyone with the IBM i is a friend of ours.
(This is where we can share our Challenges, Analyses and Solutions freely; and for free)
Discussions on the Trusted Link 4 i EDI Software
#TrustedLink #edi #IBMi #iSeries #AS400 #System3x
edi4i.info: Define a work field that is 8 digits numeric. Map the store number to this work field. Then override the properties of the N1 4.0 to be Numeric, no decimals, Length: 7 minimum and 8 maximum. Map the work field to N1 4.0:
edi4i.info: If this is the first time you are sending *.csv files, you should check Setup>Doc Types> and see if you can find CSV in the list. To add, click on [Add]:
2025-03-11 (Jeff) How can I test the file my trading partner gave me via email which I already dropped in the IFS?
edi4i.info: Assuming you already a Trading Partner Relationship, here is how you receive documents via IFS:
edi4i.info: Biz Manager is a powerful production in handling X12 & EDIFACT Transactions. Parties (Receivers & Senders) are identified by X12/EDIFICAT identifiers which will make you think that one party is equal to a TRadin
edi4i.info: Depending on what direction, the "Define Condition" on a field/element & "Define Work Field" will be open (not greyed out). When the direction is sending, then it will be open in the Field side (User File Definition). For receiving it will be the element side (Format/Map).
Yes, you can. This is what we call batch communication processing. The program call to CED8624B is for the Scripted FTP kind of network. Check your Network Setup Manual for other programs.
I need to automate this process. What Is the command to print a mailbox with the Descriptive EDI Format and send the report to the user's email address.
edi4i.info: You will need to create a document-level user exit in a form of a CL that would derive the trading partner ID using the GETMBXE1 API. Afterwhich you can check if the it has your trading partner ID which you need to the PRTDSCEDI API.
DOCUMENT ENVELOPE AREA:
A new document will be created for record H01.
- Additional data for the document will come from these non-associated records: H02
ST (10) Transaction Set Header
DOCUMENT HEADER AREA:
BSN (20) Beginning Segment for Ship Notice
DOCUMENT DETAIL AREA:
HL Loop (S) Shipment ----------------------------------+
HL (50) Hierarchical Level |
HL loop (50) in the detail area will be created by each occurrence of the H01 record.
- No key sources defined, all records in the file will be read.
REF (200) Reference Identification |
DTM (380) Date/Time Reference |
N1 Loop ----------------------------------------------+|
||
N1 (420) Name || M 1 MAPPING INSTRUCTIONS FOR N1 SEGMENT:
1.0 0098 Entity Identifier Code || M 1 ID 2 3 * MAP ST TO N1 1.0
3.0 0066 Identification Code Qualifier || C 1 ID 1 2 * MAP 92 TO N1 3.0
Qualifier for 4.0 || MAP H02 E1SHTO TO N1 4.0
4.0 0067 Identification Code || C 1 AN 2 80
Qualified by 3.0 ||
||
End of N1 Loop ------------------------------------+|
|
N1 Loop ----------------------------------------------+| O 200
||
N1 (500) Name || M 1 MAPPING INSTRUCTIONS FOR N1 SEGMENT:
1.0 0098 Entity Identifier Code || M 1 ID 2 3 * MAP SF TO N1 1.0
3.0 0066 Identification Code Qualifier || C 1 ID 1 2 * MAP 92 TO N1 3.0
Qualifier for 4.0 || MAP H03 E2DSTE TO N1 4.0
4.0 0067 Identification Code || C 1 AN 2 80
Qualified by 3.0 ||
||
End of N1 Loop ------------------------------------+|
End of HL Loop -------------------------------------+
HL Loop (O) Order -------------------------------------+
HL (730) Hierarchical Level |
HL loop (730) in the detail area will be created by each occurrence of the H03 record.
PRF (770) Purchase Order Reference |
N1 (1100) Name |
N1 (1180) Name |
End of HL Loop -------------------------------------+
HL Loop (I) Item --------------------------------------+
HL (1410) Hierarchical Level |
HL loop (1410) in the detail area will be created by each occurrence of the D01 record.
LIN (1420) Item Identification |
SN1 (1430) Item Detail (Shipment) |
End of HL Loop -------------------------------------+
DOCUMENT SUMMARY AREA:
CTT (2000) Transaction Totals
DOCUMENT ENVELOPE AREA:
SE (2010) Transaction Set Trailer
edi4i.info: The Add-to-Mailbox function is driven by the User File Definition (UFD). This setup is NOT part of Trusted Link because it entails the timing of the creation/population of records to the files in that UFD. This will be most likely in the setup. Even though you did not change the TPR, you have changed the UFD of that particular map.
Find where the existing UFD is ran and add this new one to the routine. Look for ED710 (deprecated), ADDMBX (deprecated), UADDMBX and ADDTC. A parameter of ED710 is the UFD sequence number which you can find here.
edi4i.info: Firstly, when everything is correct with your Trading Partner Relationship; the mailbox status of your import will go directly to IMP. There should be NO need to "move" it to files. The status of RCV, like any other EDI transaction means there is something wrong with the TPR specially if you created the Import TPR via Main Menu>Administration Menu>Import-Export Menu>Import-Export Configuration>F6. When creating using this method, the software creates both starting with the EXPORT (sending) then the IMPORT (receiving). But the developer of the software thought that it would be wise to flip the receiver/sender of these TPRs - it is a bug! So please review and flip the interchanges (ISA ang Group). It should reflect the same way as your Export TPR in the orginating software instance.
edi4i.info: This is true there is a N1 segment missing when the 856 is created but the N1 is in the translation format. It is true that it is mapped but for the N1 (420) mapping the data you are mapping has already been read. And your N1 (500) mapping has NOT been read yet. Here is your map summary:
DOCUMENT ENVELOPE AREA:
A new document will be created for record H01.
- Additional data for the document will come from these non-associated records: H02
ST (10) Transaction Set Header
DOCUMENT HEADER AREA:
BSN (20) Beginning Segment for Ship Notice
DOCUMENT DETAIL AREA:
HL Loop (S) Shipment ----------------------------------+
HL (50) Hierarchical Level |
HL loop (50) in the detail area will be created by each occurrence of the H01 record.
- No key sources defined, all records in the file will be read.
REF (200) Reference Identification |
DTM (380) Date/Time Reference |
N1 Loop ----------------------------------------------+|
||
N1 (420) Name || M 1 MAPPING INSTRUCTIONS FOR N1 SEGMENT:
1.0 0098 Entity Identifier Code || M 1 ID 2 3 * MAP ST TO N1 1.0
3.0 0066 Identification Code Qualifier || C 1 ID 1 2 * MAP 92 TO N1 3.0
Qualifier for 4.0 || MAP H02 E1SHTO TO N1 4.0
4.0 0067 Identification Code || C 1 AN 2 80
Qualified by 3.0 ||
||
End of N1 Loop ------------------------------------+|
|
N1 Loop ----------------------------------------------+| O 200
||
N1 (500) Name || M 1 MAPPING INSTRUCTIONS FOR N1 SEGMENT:
1.0 0098 Entity Identifier Code || M 1 ID 2 3 * MAP SF TO N1 1.0
3.0 0066 Identification Code Qualifier || C 1 ID 1 2 * MAP 92 TO N1 3.0
Qualifier for 4.0 || MAP H03 E2DSTE TO N1 4.0
4.0 0067 Identification Code || C 1 AN 2 80
Qualified by 3.0 ||
||
End of N1 Loop ------------------------------------+|
End of HL Loop -------------------------------------+
HL Loop (O) Order -------------------------------------+
HL (730) Hierarchical Level |
HL loop (730) in the detail area will be created by each occurrence of the H03 record.
PRF (770) Purchase Order Reference |
N1 (1100) Name |
N1 (1180) Name |
End of HL Loop -------------------------------------+
HL Loop (I) Item --------------------------------------+
HL (1410) Hierarchical Level |
HL loop (1410) in the detail area will be created by each occurrence of the D01 record.
LIN (1420) Item Identification |
SN1 (1430) Item Detail (Shipment) |
End of HL Loop -------------------------------------+
DOCUMENT SUMMARY AREA:
CTT (2000) Transaction Totals
DOCUMENT ENVELOPE AREA:
SE (2010) Transaction Set Trailer
edi4i.info: Firstly, we would like to assure there are no transaction files maintained in a visual mapper session. The location of the file in question is in EDI4XXDTA or whatever your *DTALIB is. The software was built mostly using the native IBMi programs. tools and DB2. We could unofficially say that the file contains configuration of your maps. This can easily be proven by querying its contents. Show this to your EDI Analysts/Developers/Programmers and they can easily confirm that this is the case. When you update mapping instructions (while in the visual mapper session), it permanently saves these in that DB2 file. Hence, you will see sorting, insertions, updates and deletions in the background. It looks like embedded SQL was used for this function.
Lastly, the person in charge of your ERP system can confirm that EDI4XXDTA or your *DTALIB is NOT part of your ERP system.
edi4i.info: The first question we ask is: Why RCVXML? There are two parameters for this command: Trading Partner ID and format. When you receive regular EDI transactions, these two are the unknown before we fetch it from the TPR primarily using the Sender and Receiver IDs. Given that the Trading Partner ID and format are the parameters of the RCVXML means that the TPR is being by passed obviously.
RCVXML is designed for a system where 1 format = 1 Trading Partner Relationship and implies from 1 location.
To avoid this, you should change your transport (like Scripted FTP) to use the features of cXML.
edi4i.info: It is erroring because it encountered a value that is NOT condition, hence it does not know what to do with it. Based on your description, you also are ignoring the CBs, but is not erroring because it was expected but nothing is being mapped. This could be fixed by adding the =UK condition or check the "Other" box [ ] which will cover =CB and =UK.
The error was pointing to "VC" because it was the closest recognizable element position. It is showing position 2.0 because the ELEMENT SET is on where the Qualifier is 2.0 and the ID is 3.0. If the CB pair was not existing, it will be pointing to "CB" (LIN**CB*12335563*****UK*20746190007890~).
edi4i.info: The solution has nothing to do with the EDI software because it does not have a feature to do so. The Map is the translation from the document in the communication session to the mailbox. After the mailbox, any further processing needs to be done via the IBMi file triggers.
edi4i.info: Assuming that we have the 1. correct Record Associations; 2. correct Conditions for selection/omission (since not all records in the record-associated table is needed to be mapped); 3. correct Timing/Order of the records (assuming the Access Method is Sequential) - the only thing left to check is the [X] Ensure Segment Creation check box. This is required to be checked if one or more constants are mapped to segments driven by a record association, more specially when the first element is mapped with a constant. In fact, these mapping instructions are flagged with a warning in the map printout (PED745N).
edi4i.info: Main Menu> Translation Menu> Envelope Maps:
edi4i.info: There is good and bad news. The good news is, YES you do not need to break your ERP to accomplish this. But (bad news), you will need to start your map from scratch. The old ASN used to be Shipment-Item which means for every Header record, there is only one Shipment and one or more Items (S-I-I-I). Hence, to achieve S-O-P-I-I-I, you could simply add O and the P by adding the shipment record format again for O and again for P (exactly the same Key Definition (option 12) and Select-Omit Definition (option 14). To achieve S-O-P-I-P-I-P-I, you will need to duplicate the S for the O and duplicate the I for the P.
If there are record associated loops (non-hierarchical), the sequence of the record formats has to be rearranged so that it will be after the hierachy it belongs to. For example, you have an addresses loop for your Bill of Lading (Shipment), the address file should be after the Shipment but before Order. These are all part of the "header" area, hence all of them should have the same key. This will be the same as the Pack level to achieve S-O-P-I-I-I.
But to achieve S-O-P-I-P-I-P-I, the keys of the Pack and Item level will be the same, and sequencing the Pack level before the Item. In this case if there are secondary associations for the item level (example multiple descriptions for an item), should be done in the item level.
edi4i.info: Unfortunately, when dealing will a hierarchical map, you cannot REMOVE/DELETE or INSERT a structure to an existing map (if you want to save on mapping time). The only way you can pattern your new requirement from an old map is when you are APPENDING a structure to it. The structure of any hierarchical document is established in the onset of the map:
edi4i.info: This error is very common when you have a UFD with a sequential access method invoving at least two loops in the header area. In this particular case the N9 loop and the N1 loop. Given a logical with the I4706 record coming before the I4714 and the keys arranged their records to be all the I4706 first then I4714's. And the record associations are N9-to-I4714 and N1-to-I4706 - this will cause the error stated above. To fix it:
Record Associate I4606 to the N9 Loop and I4714 to the N1 Loop.
Or go to the logical definition and make sure that the I4714 goes before the I4706.
edi4i.info: There are three steps needed to do this: 1) Create a numeric work field, SACTOTAL with enough digits to contain the possible accumulated total of the SAC segments. 2) While reading the SAC segment, add this mapping instruction source: SACTOTAL Add SAC 5.0 to target: SACTOTAL. 3) While reading the SAC segment, Map SACTOTAL to your UFD field. (make sure that #2 is before #3)
edi4i.info: There is a command called RNMEDILIB which you could use to achieve this.
edi4i.info: Check out the solution: SUMMING UP DETAILS TO BE POSTED ON A SEGMENT WHERE THE DETAILS ARE NOT BEING MAPPED OR PRE-SUMMING PRIOR TO MAPPING THE SUMMARY
edi4i,info: You cannot only instruct the mapper to create a segment once. Hence is there is only one record in the file/record format, it will only create one. BUT you could "trick" the mapper that there is another file that would drive/add the other HL segment:
Right Click of the top level UFD definition.
From the pop-up, [click] on Add User File Record.
Enter the same user file record you intend to read again when the "Add User File Record" dialog box appears, except for the Record ID: H03
Right Click of the top level UFD definition again. This time [click] on Define Record Sequence and move up the newly created User File Record.
Lastly, go to [Edit]>Hierarchical Levels.. to add the new record association with the appropriate HL Level.
@OTL3: Looking at the compile error report, we counted 1,002 maps associated with the UFD in question. You need to remove unused maps from the UFD as you have too many maps associated to one User File Definition. If you need to save any formats in case you need to use them in the future, you can export them first before deleting them.
edi4i.info: Or SaveAs the UFD to another name move the inactive ones to the SaveAs UFD.
edi4i.info: Firstly, the mailbox of a normal import should NOT need to be moved (with option 3). A status of RCV would mean that the envelope of the document might not be quite exactly as it should be. When you create the Trading Partner Relationship for your IMPORT via Main Menu>Administration Menu>Import-Export Menu>Import-Export Configuration>F6
edi4i.info: Don't worry this can be done and the XSD is correct. Consider this situation as something similar to an element set with a qualifier-qualified pair. The element set is equivalent to the XML Tag. and the different name attributes are the qualifiers. The value of the instance is expressed by simply the tag hence it should be driven by a condition against the attribute "name".
edi4i.info: If you were able to do SFTP Outbound in a breeze, SFTP Inbound is equally easy.
edi4i.info: We understand why you feel overwhelmed by the setup parameters. In fact, what you have is enough when Authentication Method is Password-based (the 4th parameter of the SFTP parameter group).
edi4i.info: We could not get DVDs/CDs anymore for the Trusted Link for i installs. Everything is done via eDelivery. Thus, the first objective of any upgrade will be to secure the software: From the Main Menu> Administration Menu> eDelivery Menu> Software Download> you will be asked for a user id and password.
edi4i.info: Yes, there is via: Processing Definitions=> Main Menu> Administration Menu> Control Policies> Processing Definitions> [F6]. Once setup, attach the definition to the Trading Partner Relationship.
edi4i.info:
edi4i.info: When you say “it was flagged as processed”, we are assuming that you either used the update value of the software or by running a program post Add-TC. If this still has occurred, then you might have used the Physical File for the header or a Logical that has no “omission” of that update flag.
Troubleshooting Steps:
Is the file in the Header Record format a Physical file? Ideal answer is NO - If you are omitting the ones already processed, it should be a logical with omit statements in the definition.
Is the logical omitting the Process Flag (updated by Update Value Field)? Ideal answer is YES.
Is the Logical file object match the source DDS definition or in the software's Logical File Definition - use DSPFD to check this. Ideal answere is YES. If not, recompile and check again.
edi4i.info: The scheduled job runs the batch communications API. To do it manually: Main Menu> Data Communications Menu> Network Selection Menu> pick your network> Run the appropriate send option.
If you want to send specific mailbox entries, you can do it by Selective Send Subsets.
edi4i.info: The starting point of this task is an XML document. There are a lot of tools in the market that can read *.XML file and produce an *.XSD which can be imported to the software's mapper. This site uses the Community Edition of IntelliJ and is enough for our task to convert XML to XSD. If you are receiving or sending, ask your trading partner for a sample XML they require or give. But if you are the one specifying, follow this procedure:
Record (RECMTX) has no logical relationship to the document. 7 repeats of the previous error message with message ID ATM0080 were suppressed.
edi4i.info: There are a few things we can deduce with this message. Your UFD has the access method of Sequential. That means the mapped relies on the order of the records as it is presented to the software. For this, 850; we would imagine you will have the following in your map:
--format-- ----UFD----
PO1 - loop RECPO1
PID - loop RECPID
SAC - loop RECSAC
MTX - loop RECMTX
Because the error was on the MTX record format, this tells us that the set of intended for MTX was read prior to the RECSAX records. Fix this by adding a key so that it will be read after the SAC records via the Logical Definitions or DDS.
or
If the order of records is correct, then review the segment selections in the map after PO1. For every 850, we are sure that there is only on PO1 loop. But there could be more than one SAC and MTX loops.
We have moved to a new 3rd party IBMi provider and this is the first Purge run on this box. Its running 45 hours. Log below started at midnight. Can I end this job since Reorgs have not started?
edi4i.info: There is NO need to cancel the job. For as long as you are in version 6.3.1 or higher, purging can run concurrently while your system is up.
After going through our spreadsheet of users that required being removed, I was unable to locate any of those users in the EDI software. In order to complete our audit with E&Y we need the ability to show prove via query or report that the appropriate access is granted to users in the EDI software. Can you please provide either the table/file the users in TLi reside in or a report that can be run that shows what users have access?
edi-r-us.com: We are talking of two access points here, the IBMi and the EDI software. There two layers here: the IBMi user profile and the EDI software users. To get a list of IBMi users: from the command line=> DSPUSRPRF USRPRF(*ALL) OUTPUT(*OUTFILE) OUTFILE(YOURLIB/URFILENAME). The three most important fields in this file/list are:
UPUPRF - User Profile Name
UPGRPF - Group profile
UPTEXT - Text description
And for the EDI software users in a file called UREDIDTALB/EDUSROPF
edi-r-us.com: Here is the checklist of probable issues related to your problem:
If you are using the Direct-By-Key Access Method, check the key sources of your UFD.
If you are using one of the Sequential Access Methods, check the timing of the data in your files.
Check record associations: Primary & Secondary.
Check the Ensure Creation check box, specially if the first column of your row is a constant.
23 MAN*GM*100716110000063989~
24 HL*8*7*I~
25 LIN*3000*VN*50155*JP*Z001~
26 SN1*3000*56*CA**2*EA~
27 HL*9*7*I~
28 LIN*3000*VN*50155*JP*Z001~
29 SN1*3000*1*CA**2*EA~
edi-r-us.com: This can easily be done by storing the previous Line Number and compare it with the current, so that you can decide whether to post the totals and/or start a new accumulation. There are two situations though: 1.first and only and 2. last. For these, we can write/record it via the regular Item Record format. But for the "Difference-Break" we would fake adding it to another file (same as the Item File) because a record format can only be record-associated to one loop.
edi-r-us.com: Purging removes the *USRSPC objects that are related to the transactions being deleted in various files in your data library (EDI4XXDTA in most installations). When you delete record from a file in the IBMi, you could not use the available space immediately until you run RGZPFM - Reorganized Physical File Member. This command has to be done for each of the file you have deleted records from and would like to recover space. It is given here in an option so that would not miss a file plus, there could be hundreds of it in the list.
edi-r-us.com: When you specify "User Space" as the Storage Method in your User File Definition, it will create these objects. This was the more efficient and faster way of doing things in the past. But things have change, you can now change it to Expanded Files (choosing Files has the 1024 record limit). You can only get rid of it by the purging process and use the regained space by the purge process' Reorganizing Files.
2023-03-10 (Cosplay) How do I define the Control Policy so that each mailbox gets its own ISA envelope? Right now I am getting more than one mailboxes in one file.
edi-r-us.com : You are right, you will have to change the Control Policies. There are two places to configure to make this happen 1. While in the Trading Partner Relationship; take note of what CONTROL POLICY was assigned in it and its Interchanges (Qualifier and ID). And 2. Adjust that specific Control Policy.
2023-03-02 (Carrey) I am starting a receiving 846 map. When I look at the LIN segment, I only have 3 elements. My older maps have 31 elements. My trading partner sends me 3 sets of qualifier/ID pairs . I know I have to put the first pair on the second and third elements, where do I put the next two pairs. Is the something I am missing?
edi-r-us.com: By default, LIN 2.0 thru LIN 31.0 is initially presented as a Qualifier Element Set. Yes, 15 sets of qualifier(0235)/ID(0234) pairs. [Right Click] on the QUALIFIER ELEMENT SET, then click on Undo Element Set, his will expose the array of element sets. The number of sets varies. For LIN it will be 15 sets. PO1 and IT1 have 10 sets.
2023-02-23 (Anonymous) I am getting this message "This may be an interchange header but it failed validation and was discarded."
edi-r-us: The message is letting us know that the software thinks is might ("may" as the operative word) be an ISA, but not quite. Check the ISA.
edi-r-us: Check the version in the specification of your new trading partner and compare it with the one that you have with translation format. Change the version by going to Format Properties> General Tab> Version
edi4i.info: The maps are stored in the IFS with the same name as your program lib. To backup the IFS, you would need to create save file (CRTSAVF) and run SAV:
SAV DEV('/QSYS.LIB/yourlib.LIB/ursavf.FILE') OBJ(('/edipgmlib/*'))
where yourlib is where you put the save file you created, ursavf is the save file you have just created and edipgmlib is your program library.
2023-02-14 (Anonymous): Our invoice number has leading zeros. The data going into the map is numeric however the leading zeros are being suppressed in the mailbox. The element is Alphanumeric and we expect it not to remove leading zeros.
edi4i.info: This can be solve by going to the mapping instruction> Options> Substring Tab> Target: put in Zeros for Fill Characters.
2023-02-10 (Issa) I am trying to receive an XML file with the cXML routing header using the command RCVXML. But I am getting an error: Trading Partnership used on the RCVXML command can not have an XML Header.
edi4i.info: The XML routing header (such as the cXML) is used to route the XML received to know which Trading Partner Relationship will be used to translate the XML document. When you use the RCVXML command to receive the XML document, the Trading Partner Relationship is predetermined by the parameters entered: Partner Internal ID and translation format, making the XML routing header irrelevant. Changing the XML routing header to *NONE of the Trading Partner Relationship will allow the processing of the RCVXML command.
2023-02-10 (Sang) The software has the ability to import a .DTD or an .XSD to the mapper so that I do not need to enter the XML tags. Where do I get this, I have a sample document on hand?
edi4i.info: The .DTD and the .XSD is derived from an XML document. You can use XML Spy or any other IDE that supports XML. We use the community edition of InteliJ. You can email us the XML document or complete this form.
WARNING: When you successfully import the .DTD or .XSD, you still need to review the properties of the elements. Requirement-wise: all loops are always Optional but loop starters are Mandatory and always occurs once. The error message "Element is unexpected" is solved the same way as the X12, make the loop starters optional.
2023-02-10 (Anonymous) I have configured the Launcher Configuration Tool so that I can have access to *ALL organization. I am getting the MAP0048 message "You are NOT authorized to organization *ALL". How do I fix this?
edi4i.info: It looks like you have configured your self to *ALL organizations in the Launcher Configuration Tool. To fix this, you should be specific to which organization to initially log on to in the Launcher Configuration Tool or give yourself access to *ALL organization via the Main Menu> Administration Menu> System Control Menu> Organizations> option 7 on *ALL
2023-02-08 (Joe): We are receiving the 820 (4010) from a trading partner who may not be adhering to the X12 standard. They are sending DTM/REF segments directly subordinate to the ENT loop. We are receiving TRN9300 Received segment DTM was unexpected.
edi4i.info: Your trading partner is adhering to the standards. They just are not sending the loop starters (which is by default Mandatory in your mapper). To fix this, you need to review and change the properties of all segments prior to the target segment to the nearest outward loop; and make the Requirement: Optional and Maximum Occurence: 1.
This site was established in October 2021. We relied on volunteers to maintain it It was not sustainable.
If this site benefits you, please leave us a like by donating. Thank you in advance.
2023-01-21 (David) Is there a way to round the value so that I will see 0.01 instead of 0.00 or show the rest of the decimal positions?
edi4i.info: There is a check box [X] "Round the result to the defined decimal places" in the Numeric tab of the Mapping Options popup that you can use in combination with the number of decimal places of the element (Element properties popup)
2023-01-15 (Anonymous) I am doing a software upgrade and finding I have quite a few "images" when I do WRKIMGCLG (Work Image Catalog), how does the computer know which one to load because I only specify the drive (device name) when running?
edi4i.info: The images in the WRKIMGCLG are CD/DVD images on disk. Where you need to Mount and Load like any media (but virtually).
2023-01-31 (Anonymous) I Need to know how to 'script' to move to specified directories in said server.
edi4i.info: There are four ways to specify the directory of your trading partner's server:
1) !Remote_Push directive parameter,
2) !Remote_Pull directive parameter,
3) CD command,
4) and via FTP variables.
2023-01-19 (Anonymous) My Trading Partner is NOT sending the CTT in the 850, how can I get the value of CTT 1.0 without counting the PO1's?
edi4i.info: The keyword <Detail Loop Count> is the running count of the number of detail lines (PO1 segment in this case). Different documents will have a different segment to count. When capturing the <Detail Loop Count> after the detail line loop, will be the same as the value in CTT 1.0.
2023-01-13 (Mark) Can I show the hexadecimal values of an X12 file when using EDI Notepad? Will it work of EDIFACT Documents as well?
edi4i.info: Yes, from the menu bar> View> Data(Hex).
2022-12-01 (Missy) The concept of Receiving and Sending of documents dictates that we generally on write to the files when receiving. When receiving the documents are translated from TC to the files. For sending, we read the files and send a translated version to the Transaction Center. The customer would like to update something in their files so that they do not need to the flagging of a field in the Header to signify that it has already been sent.
edi4i.info: The software has a feature to allow update to the record format which is defined as a header.
[Right click] on the target field in the header record of the UFD. [Click] on Define Update Value. Then you have a choice of entering a constant or pick a [keyword] from the drop down.
2022-10-27 (Issa) I have a challenge where I need to map the N2 1.0 to the main address field when the N3 1.0 does not exist. Since the N3 happens after the N2 the mapper won't let me condition the N2 off from the N3. Another challenge is sometimes, both the N2 and N3 segments are filled and should be mapped to the additional info address and main address fields respectively.
edi4i.info: The general strategy of the solution is to populate the main address with N2 and N3 as well. And additional info with N2 only. We will be putting these in work fields and only map these work fields to the user fields when N4 is reached.
When only N2 is existing, both the "additional info" and "main address" work fields will contain N2 1.0. That is why, we need to *blank the "additional info" work field when this happens.
When only N3 is existing, the "additional info" work field will be *BLANKS and "main address" work field will contain N3 1.0.
When both N2 and N3 are existing, the "additional info" work field will contain N2 1.0 and "main address" work field will contain N3 1.0.
2022-07-22 (Biden) How do you confirm patch installation?
help4i.org: The patch comes with a text file which enumerates a list of objects updated. Do a DSPOBJD on each of these objects and check the Text Descriptions. It will show tha patch markers.
2022-07-13 (Rekka)The company has moved from a VAN using scripted FTP - Network N1 to secured FTP - N2. Currently N1 has 750+ TPR's (Trading Partner Relationships) while the new network, N2 has already more than 1000 TPR's. The solution to delete and recreate the network with the new setting is tedious and not justifiable.
edi4i.info: It has been observed that the EDTRAD is the software's Trading Partner Relationship master. It contains the field for network ID. The following has been tested to prove the health of the system:
A TC entry was chosen and the TPR was noted.
The selected TPR was displayed and the TPRID was noted. Screenshot of the TPR was saved.
Network ID was changed on EDTRAD using SQL using TPRID to fetch and change.
Various tasks were done using the updated TPR including sending to the network. If able, pick a mailbox for a receiving transaction and make copy to the new network and trying receiving it.
2022-07-01 (David) Our Trading Partner is requiring us to force element separators after the last populated qualifier/qualified element pair of the LIN segment. The trading partner is asking to put a specific number element separators.
2022-05-19 (Anonymous) Where does the mapper confirm licensing? Sometimes, I am not allowed to use it and am ask to try later.
edi4i.info: The mapper check for licenses in the host system where the software is installed. When the mapper is initiated, it will check if there are seats available. It communicates with the background applications:
2022-05-17 (Venkat): How to configure Trading Partner Relationship to generate an envelop for each Document/Mailbox?
edi4i.info: Need to change the control policies of the interchange and make enveloping options to document.
edi4i.info: The XML Declaration is not part of the mapper nor part of the XML header. This attribute can only be inserted after is has been sent to the IFS by using a Post-Communication user exit.
2022-04-23 (Anonymous) How do you map a Julian date from a user field to DTM 1.2 in DESADV without complicated conversions nor use of user exits? And vice versa from an ISO date field to DTM 1.2 presented as a Julian Date.
edi4i.info: But for EDIFACT, the Data Type Property of DTM 1.2 is by default ALPHANUMERIC. Override the Data Type Property of the target element, DTM 1.2 to DATE (and by the default the date will be in CCYYMMDD).
But! if it is the reverse where CCYYMMDD or other in your ERP system to and you want Julian format to be mapped to DTM 1.2; check out the solution in the following section:
Solution Vice Versa - There are 3 parts:
1. The source (user field) should be data type DATE.
2. Create a work field that will be a date field (Julian YYDDD). This is where the conversion takes place when the source is "mapped" to this work field.
3. The target element should be ALPHANUMERIC (so that there will be no conversion when the work field is mapped to the element.
2022-04-03 (Earle) The current map is sending S-O-I-P-P to the mailbox which is reflective of the records in the UFD/file. How will I use the same records to achieve S-O-I-P-I-P? (without changing the records in the file or asking my ERP to shuffle around its records. Direct-by-key is the access method of my UFD.
If we 1) swap the record association of Item to D05 (which use to be the Pack's) and the Pack to D04 (which use to be the Item's). And adjusting the 2) key sources and 3) review mapping accordingly (although mapping changes will be close to *none), the S-O-I-P-I-P is achieved. When the Order record brings in the first D05 record (Item), the HL-I is created. Because of the new key source configuration, brings in the only D04 record (Pack) and sends the first HL-P record to the mailbox. Then the next D05 record is read, then another HL-I is created, then brings in the same D04 record (because of the key source configuration) - sending another HL-P to the mailbox.
2022-02-01 (Anonymous) We are using FTP to our local IFS as a pass through to our trading partners server via SFTP. Some trading partners will not accept the file without an extension. We tried RENAME and it seems it does not work anymore.
Is there some kind of job log that I can look at when the communication script runs? So that I know what is happening.
What is the FTP 550 error mean?
edi4i.info: If you could not have RENAME running, this is an alternative. By default, FTP sends the files with name of the communication session. To rename it with an extension, you should modify your script and do an explicit PUT within the !PUT_SESSION-!END_PUT loop using the following script:
PUT &filename; &filename;.edi
This will copy the files with an added ".edi" extension (please be mindful of punctuations). And if the directory in the CD command is still wrong, the file will be found in the default directory the user is assigned to as it comes in. If you need to variably change the directory by Trading Partner/TPR, check this article out.
The master communication session (the one that ends with a 9) is the FTP log.
2021-07-22 (Jim) This is not so much an issue, just a curiosity. I have data showing up in my data base files from elements that are not mapped. How does that happen?
edi4i.info: There are two places where values gets posted to the user file without mapping instructions:
For the receiving header record format, SET ID Fields can be defined to post the following Partner ID, Mailbox ID and Address ID.
For any field in a receiving UFD, a constant can be defined.
Note: For the send UFD however, only the header record format can have a constant or a <keyword> posted can be posted on a field.
BUT if you still do not see it in both cases, hence it should be the default value configured when the file was created.
2021-07-15 (Abbas) Can I ask the mapper to read a file/record format twice? I want the mapper to read the file and map all the TRC's on the first pass and all the NTE's on the second pass.
edi4i.info: The answer is "NO". You can only record associate associate a file/record format to only one loop in the map. To be able to achieve this, you will need to create two logical files against the same physical file.
edi4i.info: The Change System Library List (CHGSYSLIBL) command is used to remove, add or rearrange the libraries in the system area of the list. Run this command before retrying the erring command/call to a program.
edi4i.info: We can use the Trading Partner Relationship FTP variables to establish the directory and suffix. This way you can make the value dependent on the TPR. In this example we will be using &TP01 (the target folder) and &TP02 (suffix). We will be hard coding the extension.
Warning: Check the default directory when signing into the FTP site and make sure you consider this when evaluating the &TPxx variables. Use a tool like Filezilla to check this.
edi4i.info: The Query Transaction Center Entries—UQRYTCE API and QRYTCE let you query Transaction Center entries based on an existing Transaction Center subset you have already created. This API generates an *OUTFILE that is placed in a location you designate in the API/command parameter (check the procedure HERE). You can see the list of fields of this *outfile HERE:
Did NOT find anything interesting?
Use the upper right button/magnifying glass to search for a keyword.
Email us for new issues or if you want to contribute to the forum.
For immediate concerns click on the "Chat with us" button to chat with somebody or leave a message with the "Leave a message" button.