Receiving from unknown senders

If I understand the documentation correctly, if the Sender's EDI address can not be associated with a Party the EDI Global Properties / EDIFACT Interchange Processing Properties are used. However, if I submit an EDIFACT message with an unknown sender the message fails with ...

Event Type: Error
Event Source: BizTalk Server 2006 EDI
Event Category: None
Event ID: 8118
Date: 07/08/2007
Time: 15:28:19
User: N/A
Computer: DRAGONFIRE
Description:
Error encountered during parsing. The Edifact transaction set with id '' contained in interchange (without group) with id '222222', with sender id 'SARGZ', receiver id 'RCSX' is being suspended with following errors:

Error: 1 (Miscellaneous error)
502: Document spec typehttp://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006/#EFACT_D97A_ORDERS_DEMO01 not found

Error: 2 (Miscellaneous error)
70: Missing or invalid Transaction set identifier

Error: 3 (Miscellaneous error)
71: Transaction Set or Group Control Number Mismatch

Error: 4 (Miscellaneous error)
29: Invalid count specified at interchange, group or message level


--

If I change the Sender to 'SARG' (a known Party ID) everything works. Is this a bug or am I misunderstanding when the Global Proerties are used on inbound ?>

[1577 byte] By [Richard] at [2008-1-7]
# 1

looks like EFACT_D97A_ORDERS_DEMO01 scehma is missing / not deployed properly..
GenuineBasil at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 2
As I stated in my 1st post "If I change the Sender to 'SARG' (a known Party ID) everything works" so this implies that the schema is deployed and can be found.

Richard at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 3

What did you set for UNH2.1, UNH2.2 etc for custom schema under Party as Interchange Sender? What is the root node and namespace of the schema you are using?

It looks like your party has specific settings for that custom schema that cannot be matched in the global settings that is leading to this error. Once you answer the questions above, I can better help you with your problem.

Thanks

Mohsin

MohsinKalam–MSFT at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 4

My first test used the following UNB

UNA:~.?*>
UNB~UNOC:1~SARG~RCSX~070807:1140~222222~~~~0>
UNH~2222~ORDERSBig Smile:97A:UNBig SmileEMO01>

In this case the Sender ID (SARG) was known to the system and the Recipient ID (RCSX) was not known. The system worked correctly and processed the file correctly.

I then changed the test file to

UNA:~.?*>
UNB~UNOC:1~SARGX~RCSX~070807:1140~222222~~~~0>
UNH~2222~ORDERSBig Smile:97A:UNBig SmileEMO01>
BGM~105::SurpriseRDERS~SARG-1:9>

In this test, both SARGX and RCSX were unknown and thats when I received the error...

Error encountered during parsing. The Edifact transaction set with id '' contained in interchange (without group) with id '222222', with sender id 'SARGX', receiver id 'RCSX' is being suspended with following errors:

Error: 1 (Miscellaneous error)

502: Document spec type http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006/#EFACT_D97A_ORDERS_DEMO01 not found

Error: 2 (Miscellaneous error)

70: Missing or invalid Transaction set identifier

Error: 3 (Miscellaneous error)

71: Transaction Set or Group Control Number Mismatch

Error: 4 (Miscellaneous error)

29: Invalid count specified at interchange, group or message level

For more information, see Help and Support Center at

Richard at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 5

Did you change the schema target name toError: 1 (Miscellaneous error)

502: Document spec type http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006/#EFACT_D97A_ORDERS_DEMO01

?

Regards,
Leonid Ganeline
http://geekswithblogs.net/leonidganeline/
LeonidGaneline-MVP at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 6

What's the schema got to do with it? The schema is deployed and works perfectly as long as the Sender/Recipient addresses are known. All I did was modify the UNB on the input EDI file so the Sender/Recipient addresses were not known to BizTalk (to test the response).

Richard at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 7

How you come to this schema? You change the party recognition pass, then you hit this schema with this target namespace. In first case when you didn't get the error you should get other schema. Check this, please.

Seems there should be namespace in the EDI party settings for the second case. Double check, please.

Regards,
Leonid Ganeline
http://geekswithblogs.net/leonidganeline/
LeonidGaneline-MVP at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 8

The schema is the standard D97A ORDERS sheams that came with R2 and it has been modified in the normal way to work with an Association Assigned Code in the UNH.

In both my tests the recipient address (RCSX) is unknown.

In the test that works the sender (SARG) is known and the only thing that is configured on the EDIFACT Interchange Processing Properties is UNB2.1 = SARG and Default Target namespace is http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006.

When I change the Sender to an unknown address (SARGX), if I understand the docuementation correctly it will use the Global EDI Properties. Here the only thing that is configured for the EDIFACT Interchange Processing Properties is Target namespace = http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006.

Again the purpose of this exercise is to understand when and how the Global EDI Properties are used. There are times when being able to receive from unknow addresses can be very useful but there are also times when it must be trapped to avoid processing unexpected messages.

Note: Personally I think the error message I am getting is wrong and causing a "wild goose chase" :-)

Richard at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...
# 9

Richard,

I setup a similar scenario to what you have explained and I haven't been able to repro your error. Looks like you "might" have overlooked a few settings. And yes your observation is correct that if a Party is not found, we use the Global EDI Properties.

My scenario is as follows

Create a party with UNB2.1 under Party as Interchange Sender set to SARG.

Default namespace = http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006

UNB3.1 is set to null in the party.

I have deployed the following schema

RootNode = EFACT_D98B_APERAK_EANCOM

NameSpace = http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006

My instance has the following value

UNA:+,?*'
UNB+UNOB:1+SARG+UNB3.1+012301:0123+UNB5'
UNH+UNH1+APERAKBig Smile:98B:UN:EANCOM++13+UNH5.1+UNH6.1+UNH7.1'

....

....

When I pass this document through EDI Receive, it goes to the party settings (since UNB2.1 match) and I am able to successfully parse the document. When I change the Sender ID to SARGX, it goes to the Global settings and I am still able to successfully parse the document.

Just as a sanity check to see if the Global properties are being hit, I change the Global namespace to http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006/test and sure enough I get the error that the schema cannot be found (because the namespace does not match)

My suggestion would be to check the following settings and verify you have them correct

1. Rootnode of the schema deployed (Should be EFACT_D97A_ORDERS_DEMO01)

2. Namespace of the schema deployed (Should be http://schemas.microsoft.com/BizTalk/EDI/EDIFACT/2006)

3. Party Namespace to match the deployed schema's namespace

4. Global Namespace to match the deployed schema's namespace

Hope this helps

Mohsin

MohsinKalam–MSFT at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk EDI and AS2...