Tenho estado a explorar o Base EDI Adapter incluído no BizTalk 2006 (que parece estar igual ao da versão anterior), e aproveito para chamar a atenção para alguns pormenores que podem acontecer quando se faz a sample incluída (Getting Started with EDI).
1) Quando se faz a validação do schema (X124010850SchemaWithoutCodeSets.xsd), vão aparecer umas boas dezenas de warnings de validação, relativas a tipos de atributos (date e time). Estes warnings podem ser ignorados.
2) Se, durante o teste à solução, acontecer um erro como este no event log:
Error encountered: ERROR (46), interchangenr 10001 :
The source document in this mapping is not recognized. Check the mapping.
(msgnr:1 segnr:1)(line:4 pos:7 filepos:460)source format: [5 00401 ] source
document: [850 0040101 X ]
source format: [5 00401 ] source document: [850 0040101 X ]
O motivo prende-se possivelmente com a seguinte curiosidade descrita na documentação (em Configuring the Base EDI Adapter): “If the EDI service is running as a local machine account, you must log on and develop using a local machine account.“
Se, como eu, tiverem o BizTalk configurado com uma conta de serviço local, mas estiverem logados no PC com uma conta de domínio, vão ter este problema.
Uma forma de tirar teimas é tentar correr a tool “compief” no comando de linha. Se o resultado for:
Failed to trigger compile-thread on the server.
(-2039) <Description for error (-2039) cannot be found. Please refer to the Trouble Shooting Guide for this description>
Error=80090304
Este erro significa “THE LOCAL SECURITY AUTHORITY CANNOT BE CONTACTED”, e indica que se deve estar perante esta situação.
Podia ter evitado isto se tivesse lido a documentação com mais atenção, mas parece-me um erro fácil de cometer. Ainda não sei se é possível contornar a situação, mas para não ter de desenvolver com um utilizador de uma conta de serviço local fiz o seguinte:
– crei um script que faz o xsd2edi, seguido do compief, e que executo com as credenciais do utilizador local. Todo o desenvolvimento e até deploy é feito com meu utilizador normal de domínio (a dica está aqui).
Se tiverem o infortúnio de usar schemas EDIFACT, o “site oficial” da ONU está aqui.
[Cross-Posted de http://www.arquitecturadesoftware.org/blogs/joaomartins]