Send EDI to TN

hi

i have a businss process which generates an EDIFACT Document. It all works fine but when i want to send this edi file to TN (with wm.tn.receive) i get the following error message:

com.wm.app.tn.err.EXMLException: wm.tn.doc:recognize com.wm.app.tn.doc.BizDocTypeException An error occured during document processing. The service wm.b2b.editn:getICDetail failed [EDIFTN.000010.000208] (0) com.wm.util.BasisRuntimeException: [BAC.0001.0060] RuntimeException: cannot insert null key (1) com.wm.util.BasisRuntimeException: [BAC.0001.0060] RuntimeException: cannot insert null key com.wm.util.BasisRuntimeException: [BAC.0001.0060] RuntimeException: cannot insert null key com.wm.util.BasisRuntimeException: [BAC.0001.0060] RuntimeException: cannot insert null key com.wm.util.BasisException: [BAC.0001.0060] RuntimeException: cannot insert null key at com.wm.util.BasisRuntimeException.(BasisRuntimeException.java:46) at com.wm.util.data.MemData$Cursor.insertAfter(MemData.java:498) at com.wm.data.ValuesEmulator.put(ValuesEmulator.java:178) at wm.b2b.editn.EDIdata.ICheader(EDIdata.java:308) at wm.b2b.editn.EDIdata.buildEnvelope(EDIdata.java:168) at wm.b2b.editn.getICDetail(editn.java:344) at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.wm.app.b2b.server.JavaService.baseInvoke(JavaService.java:287) at com.wm.app.b2b.server.invoke.InvokeManager.process(InvokeManager.java:554) at com.wm.app.b2b.server.invoke.StatisticsProcessor.process(StatisticsProcessor.java:44) at com.wm.app.b2b.server.invoke.ServiceCompletionImpl.process(ServiceCompletionImpl.java:221) at com.wm.app.b2b.server.invoke.ValidateProcessor.process(ValidateProcessor.java:49) at com.wm.app.b2b.server.ACLManager.process(ACLManager.java:194) at com.wm.app.b2b.server.invoke.DispatchProcessor.process(DispatchProcessor.java:39) at com.wm.app.b2b.server.AuditLogManager

when i do this with an standalone service (input edidata) it works fine.

please help
best reagrds
alex

hi

i turned on input validation in the stand alone service and i got the following error message:
(this service only contains wm.tn.receive)

com.wm.lang.flow.FlowException: [ISC.0049.9005] Input validation for service ‘wm.tn:receive’ failed: ‘/node VV-005 [ISC.0082.9034] Field is absent, field must exist’

thanks in advance
alex

Alex,

Which version of IS/TN/EDIModule you are working on?

you can use either of these services to route the EDI document to TN
(wm.tn.doc.xml:routeXML,wm.tn:receive)services.I prefer always routeXML service,since tn:receive is a gateway service but you can use this in the flow either.

For both the services Input will be the Node object.

If you have made the EDIFACT document string wrapped with (UNB,UNH,UNT,UNZ)segments

So convert the final edi string to Node using (XMLStringToNode or StringToDocument)this gives output Node and this will map to input of routeXML or tn:receive service and routes it to TN.
(So now you will get rid of the above thrown /node absent error.)

Before pushing the EDIFACT document to TN,make sure in the TN whether the particular EDIFACT documentType is installed and enabled.

Note:Please use the keyword search functionality provided in this site,since lot of threads been discussed on the procedure of routing the EDI file to TN.you will suprise after seeing the results

HTH,
RMG

hi

thanks for your replay…
i already fixed this issue.
i found the error in another part of my process…

thanks a lot
alex

Hi
I got a small question for the WMUsers over here… :wink: !
Myself new to web methods… I have a small task to finish up…

I have a service to send mails … But now i need some thing to parse an incoming mail and get some information frm it … how do we do that ?

DO WE ALREADY HAVE SOMETHING WHICH DOES THAT ???
or do we need to create one ?
My Requirement is to parse the mail message and check for something like for EG: SUP_ID=0099112312
how do we do that ?

Thanks in Advance,
Shan.K.S
shan@changepond.com

Shan,

Configure an Email Port using the ISAdminConsole/Ports section and specify your global receiving service that will be receive the email and extract the content(Stream)body of the email.use the pub.flow:getTransportInfo service that will give you the enough information of the Email transport check this in the pipeline.
Once you have the content stream in the pipeline then convert it pub.io:StreamTobytes and bytesToString and further down do a logic of checking the SUP_ID exists or not and proceed further.

For more information about parsing of incoming mail look into the ISAdministrator guide that will explain in detail

HTH,
RMG.

[0] pathName=/IDOC/EDI_DC40 errorCode=VV-005 errorMessage=[ISC.0082.9034] Field is absent, field must exist

when i am trying to publsh the IDOC document,i get this error.

Sidhartha,

Please make sure if all the mandatory elements are present in the =/IDOC/EDI_DC40 record,which you will see that kind of error.

HTH,
RMG