A lógica é simples, os detalhes é que complicam.
É enviar um XML e receber outro como resposta.
Imagine um programa em Harbour:
PARAMETERS cXmlEntrada
DO CASE
CASE TemSoapAction( cXmlEntrada, "umacoisa" ) ; cXmlSaida := SoapActionUmaCoisa(Parte(cXmlEntrada))
CASE TemSoapAction( cXmlEntrada, "outracoisa" ) ; cXmlSaida := SoapActionOutraCoisa(Parte(cXmlEntrada))
OTHERWISE ; cXmlSaida := "SoapAction inexistente"
ENDCASE
RETURN cXmlSaida
O Webservice é algo assim.
Tem a parte padrão de se comunicar com o webservice, e tem os detalhes adicionais que dependem do que o programador colocou.
Com certeza a forma de indicar "variáveis"/valores é padrão, mas os nomes e conteúdo não.
Agora vamos ao seu arquivo:
à primeira vista, te passaram exatamente o XML que o seu aplicativo deve gerar pra transmissão.
Um começo seria trocar os valores dele pelos seus valores, ou até tentar com o que veio
Por exemplo aqui: código do produto, descrição e quantidade
<Codigo_Produto>45460</Codigo_Produto> <Descricao_Produto>Agua Oxigenada</Descricao_Produto> <Quantidade>1</Quantidade>
Não sou expert no assunto. Só me acertei com os webservices de NFE, CTE, MDFE porque os manuais são bem completos, e todos seguem o mesmo esquema.
No caso acima do Maranhão, é o único diferente de todos os outros, ainda não resolvi.
Então pode dividir seu problema em duas partes:
1. Comunicar com o webservice
É basicamente entregar o XML e receber resposta.
Existe um formato válido para o chamado "envelope de soap".
<envelope>este aqui é um envelope<conteudo>aqui o conteúdo</conteudo></envelope>
o envelope precisa estar correto pra ser aceito
Dependendo do webservice, não há nenhum tipo de resposta enquanto no mÃnimo o envelope não estiver correto
2. O conteúdo ser aceito
o conteúdo são os valores propriamente ditos, que ficam embutidos no xml principal.
Comparando com o webservice do governo, seria uma nota fiscal preenchida corretamente.
No caso da NFE, retornam mensagens dizendo qual informação está preenchida errada.
Acho que a soapaction dá uma idéia do endereço de comunicação, é o ponto de partida:
http://webservice.bionexo.com/BionexoInterface/postRequestE o ponto de partida do XML é esse XML que recebeu, pode tentar transmitÃ-lo pra ver a resposta.
Mas é possÃvel que tenha alguma senha ou identificação especÃfica para sua empresa.
A partir daà é com quem tenha mais conhecimento do que eu.
A intenção foi só dar uma idéia do que se trata.