WebMethods EDI

Hi All,
Can some one help me in understanding webMethods EDI as well as capabilities of the EDI Adapter .

Regards,

Tafazul Akbar

Hi Akbar,

wM EDI enables the Business partners to exchange EDI Documents.

Features:

  1. You can process most EDI standards such as ANSI X12,UN/EDIFACT, VICS, UCS, and EANCOM.
  2. Supports EDI documents containing multiple transaction sets and multiple versions in a single document.

For better understanding go thr’ the EDIModule User Guide.pdf

Cheers,
Thota

EDI Adapter also supports custom Flatfiles,EDI VAN information and now latest edi tradition is EDIINT through secure internet, which give companies robust ROI.

If you have webMethods advantage website account,login to it and under
BookShelf/webMethods eStandards/webMethods EDI Module/

you will find EDI workbooks of various versions,just pick up latest

webMethods EDI Module Concepts Guide.pdf
webMethods EDI Module User’s Guide.pdf
webMethods EDI Module Built-in Services Reference.pdf

HTH.

This looks like the perfect place for me - a total novice.

My first question:
My partner sends us EDIFACT EANCOM messages. Ignoring the mystery of why a standard needs another standard (is that a substandard?), I am very confused about what to pass getTemplate for these messages.
The message contains the header (from UNH)
UNH+99999999999+ORDERS:D:96A:UN:EAN008’
The ORDERS part is clear, and the 96A is the UN standard. However, the EANCOM standards have different versions (97V4, for example) which used in the template collections. How do I get from the version information in the template to the version required by getTemplate other than hardcoding it. which is what currently happens.

Question 2:
The new messages are D01B EDIFACT messages (with EANCOM frills again). Where to SAP people go to get them - the newest thing on the SAP website is D01A, dated 2002, and the newest EANCOM stuff is 97V4.

Question 3:
Does anyone really get convertToValues to run without giving some kind of runtime error? (I am using Business Connector version 4.6, - with the EDI support pack - so maybe that’s why?. I’m not game to try to upgrade to 4.7 - enough wierd stuff happened when I put the EDI support pack in…) I have been getting NullPointerException, NoSuchMethodError, Index out of range - why? Doesnt say. What was it trying to do? Surely production-quality code should (a) not die like this and (b) say something about what was wrong? I’ve spend a day and a half trying to make it happy… Ungrateful…

I have inherited this system from someone else (now insane and under the protection of the state) and I notice that the mapping routines for the inbound documents ignore convertToValues and do it all by hand. I am trying to recode it properly, but no matter what I do, convertToValues dies. Does it do this in production systems too? I can imagine that the slightest variation in anything (document numbers get more digits, etc) would cause it to start mysteriously dying without any suggestions about the nature of the problem at all.

Question 4:
Adding insult to injury, Developer 4.6 gets slower and slower (eating 100% cpu) until eventually, the only thing to do is kill it and restart it every 20 minutes. I cannot find any reference to this in the groups, so perhaps I have done something wrong? (win2000, 750MHz, 512MB ram, 128MB for developer in the startup script.)

About Develper says this…
Developer Environment Settings:
Version: 4.6 (940 + CoreFix 5 [Fixes 1-12 + SP1&2])
Updates: BCD46_CoreFix5
SSL: Strong (128-bit)
Java Version: 1.3.1 (47.0)
Java Vendor: Sun Microsystems Inc.
Java Home: C:\program files\sapbc46\Developer\jvm
Classpath: C:\Program Files\sapbc46\Developer\updates\BCD46_CoreFix5.jar
C:\Program Files\sapbc46\Developer\lib\integrator.jar
C:\program files\sapbc46\Developer\jvm\LIB\RT.JAR
C:\program files\sapbc46\Developer\LIB\updateManager.jar
C:\program files\sapbc46\Developer\jvm\LIB\i18n.jar
C:\program files\sapbc46\Developer\LIB\client.jar
C:\program files\sapbc46\Developer\LIB\mail.jar
OS: Windows 2000

I must say that the code we have runs well and reliably (but then it doesn’t use convertToValues very much…) and all seems to go quite fast, but it is a right mongrel to maintain. Clearly, the Other Guy kept on taking evasive action in the code to get around problems and it just got more and more convoluted.

I appreciate you taking the time to read this far and thank you for any anwers that you might be abl

Russell,

I believe you are using webMethods SAP BC/IS4.6/EDI4.6 in your development.

Here are some thoughts,

EANCOM is developed based on the UN/EDIFACT standards and I believe the versions that webMethods IS pre/new versions support for EANCOM 93A,96A and new version 97V4 is not listed with in webMethods EDI module.

Ans for Q1)In the getTemplate service the version information is to be hardcoded and there is no dynamic way unless if you use TN component and routing EDI documents to a flowservice and you can make use of pipeline variables and use it in the getTemplate of version param.

Ans for Q3)There could be various reasons of failing when parsing with convertToValues service,it might be due to EDItemplate is not loaded properly which may throw nullpointer exception,or edidata is not being passed and also specify maxErrors=-1 when validation is ON etc…so please debug in the pipeline and make sure the template,edidata is being populate before mapping to this parsing service.

Ans for Q4)Try to increase Developer tool memory heap,so edit the Developer/bin/developer.bat file and increase this param -ms256M -mx256M and restart the Developer you will some effect.And also some times this slow response is based on the remote IS that you are connecting.

Regarding Ans for Q2) i am not sure of it.

Please correct me if i am missing some thing,

HTH,
RMG.

RMG
Many thanks for your reply.
I have a database table that takes information from UNH as a primary key and uses it to return the document type, standard, version, and a mapping service name for this particular partner. It seemed like overkill, but it is good to know it is necessary.
I have used the debugger to see that the template is definitely there, which is why I am worried about the stability of convertToValues. The template contains the UNH for ORDERS, and the getEDIstring is picking the UNH text out of the IDATA returned by envelopeProcess, so it looks like it should work. Anyway, that’s what evenings and weekends are for…
And finally, my developer.bat has the defaults - -ms16M -mx128M so I guess that is the problem.
I have downloaded the SEF documentation and embarking on the ugly process of creating the templates by hand. Not so nice, but I am sure it is good for the soul.
Thanks again,
Russ.

Russell,

Let us know if you have any futher problems,we will try our best to respond…

looks you are struggling on the EDI process how it behaves.

Regards,

Very kind of you to offer.
As it happens I have another problem right here.
I am trying to create a SEF for ORDERS for EDIFACT D01B.

Does SEFParse understand the entire SEF syntax, or does it have a limited view? I nicked the template from EDIdev’s download site and rolled it in. The segments all turn up but composites with user attributes (like ! for mandatory) are disregarded. I am hoping that there is perhaps a guideline that tells how much SEF it understands.
I am using 4.6.
Thanks again for your help.

Russell,

SEFParse will read the entire SEF syntax based on the template,but i am not sure why it doesnt turn up the composite user attributes out of the template.may be the template is messed up.

Where did you downloaded the template from.is it from webMethods Advantage site?or else contact tech support.

Use the SpecBuilder tool that helps to understand the SEF file.

HTH,
RMG

RMG,
The template came from www.EDIdev.com, which has a page of various templates in various versions. I picked the newest version for ORDERS (98B) with the intention of souping up the bits I need to D01B.
I am working for an SAP site, so we don’t have access to Advantage, unfortunately. Must be something about money. SAP has lost interest in BC, so they are not providing any more stuff for it.
I have downloaded specbuilder, thanks for the tip! Any idea of what it costs? They are a bit shy about price on the website, so my guess is that it falls in to the ‘If you have to ask, you can’t afford it’ category.
Also, I have installed a fresh copy of the server, and it is working as one would hope. Looks like my development installation is shot. Perhaps I should re-install and re-upgrade the EDI packages?
Russ

Russell,

sorry I dont have info about the cost of that tool,acutally i used that tool in a client site,just installed on my notebook and started working and it is very useful for deep understanding EDI segments,Qualifiers and creating SEF’s…so i suggested the same.

Since you are using SAP BC/EDI on it,unfortunately i have not worked on this tool anytime but EDI stuff is common for all the IS versions and great thing is staring from IS6.0 webMethods EDI module enhanced a lot with easier maintainence of creating EDI schemas,record/doctypes etc…automatically by EDI UI management.

yes if possible try to upgrade your EDI module too.

just my thoughts,

RMG
Sadly, I am stuck with version 4.6 because the customer will not spend any more money on BC - they will do a complete reassessment of the field and probably choose something else, which means I have to learn how to wrestle with an entirely different type of tiger.

Perhaps someone can help me with SEFParse, though. I have this simple file…
.VER 1.6
.INI
.TDVER 009870
.DATE 2/6/2003 10:32:35 AM
.PUBLIC
.STD ,LS
.SETS
ORDERS=[1]
.SEGS
UNH=[!0062,M][0068,M],.#
.ELMS
0062=AN,1,6
0068=N,1,2

Now my reading of the SEF standard says that it should create a template with one field for UNH, being 0062. The UNH*1 says use mask 1, and the dot says that for the first field, do what the standard says, and the # says that the second field should be omitted.
My SEFParse gives me both fields.

In this example…
.SETS
ORDERS=[2]
.SEGS
UNH=[!0062,M][0068,M],.#
.ELMS
0062=AN,1,6
0068=N,1,2
(header dropped for brevity) the !0062 should say that for this convention, the field is mandatory (which it already is from the standard, i.e. the ,M) yet in my BC, the field is omitted, as if the ! means NOT.

Given that everyone else can get this to work, then either 1) I misread the standard (several times) or 2) there is something wrong with my BC, or 3) there is something wrong with the files.

My EDI package is wmEDI_4_6_SP3, which is the latest version available at the SAP web site.

As ever, thanks for reading this far, and even thanksier for any forthcoming replies.
Russ.


  1. UNH*1 ↩︎

  2. UNH*1 ↩︎