Le forum de la communauté PHP !
Vous n'êtes pas identifié.
Bonjour tout le monde,
Tout nouveau sur le forum je sollicite votre aide et vos bonnes idées pour mon problème auquel je ne trouve pas de solution.
Je vais vous expliquer du mieux que je peux.
Voilà, je dois faire pour la société dans laquelle je travaille un traitement automatique des factures d'un fournisseur spécifique pour pouvoir les intégrer en quelques clics dans notre logiciel de gestion.
Les factures sont envoyé au format XML, j'ai créé un parseur XML en PHP, qui permet de ne récupérer que les infos dont j'ai besoin dedans. Cette page PHP créée ensuite un fichier formaté de telle manière qu'elle puisse être compatible avec le soft de gestion, puis elle l'expédie par mail à mon responsable qui se charge de l'importation dans le soft. Jusque ici tout fonctionne impeccablement.
Mon problème est là, jusqu'à présent je travaillais sur un fichier XML de test, alors j'ai créé un petit formulaire HTML qui me permettais de soumettre le fichier à PHP en vue de son traitement par la méthode POST. Maintenant mon contact chez le fournisseur affirme qu'il faut que je lui donne simplement le lien vers la page de traitement, leur système informatique (dont je ne connais pas la technologie) l'expédierais directement sur cette page. A moi simplement de faire en sorte que ma page de traitement récupère ce fichier et le traite.
Je ne sais absolument pas comment faire pour récupérer ce fichier sans formulaire de soumission. J'ai une piste du côté de la méthode "Xform" mais je ne saisie pas comment elle fonctionne. Et c'est là que j'ai besoin de votre aide. Cela plusieurs jours que je planche là dessus sans résultat.
Je ne sais pas si j'ai été très clair.
Je vous remercie tous par avance.
Hors ligne
Bah j'ai bien l'impression que mon problème est insoluble....
Zut, j'ai toujours pas trouvé n'empêche
Hors ligne
Bah voilà, quelques temps plus tard, je n'ai toujours pas avancé.
Je mets un bout de code en VB fourni par la personne de ce fournisseur.
Je suis un peu perdu ne connaissant rien au VB.
<%
@ Language=VBScript
%>
<%
strCatalogue = "xxxxx"
%>
<!-- #Include File ="../include/xxxxxxxx" -->
<%
If Request.totalBytes > 0 Then'
dim xmldoc
set xmlDoc = Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
'**************** Charge la requête XML dans un objet XML ***************************
xmlDoc.Load Request
' ************Code lisant le fichier XML et le stockant dans une base de données *****************
If (xmlDoc.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = xmlDoc.parseError
StrReponse = myErr.reason
Else
StrReponse = xmlDoc.xml
set oInvoiceType = xmlDoc.selectsinglenode("//Invoice/InvoiceHeader/InvoiceType")
if oInvoiceType.Text="Invoice" then
set oIMAccountNumber = xmlDoc.selectsinglenode("//Invoice/IMAccountNumber")
set oCustomerPO = xmlDoc.selectsinglenode("//Invoice/InvoiceHeader/CustomerPO")
set oInvoiceNumber = xmlDoc.selectsinglenode("//Invoice/InvoiceHeader/InvoiceNumber")
set oOriginalOrderNumber = xmlDoc.selectsinglenode("//Invoice/InvoiceHeader/OriginalOrderNumber")
set oInvoiceDate= xmlDoc.selectsinglenode("//Invoice/InvoiceHeader/InvoiceDate")
SQL = "INSERT INTO [Statut - tracking] (CustNumber,CustomerPO,InvoiceNumber,OriginalOrderNumber,InvoiceDate)"
SQL = SQL &" VALUES"
SQL = SQL &" ("&mid(oIMAccountNumber.Text,5,6)&",'"&oCustomerPO.Text&"','"&oInvoiceNumber.Text&"','"&oOriginalOrderNumber.Text&"','"&oInvoiceDate.Text&"')"
response.write SQL
Connexion.Execute(SQL)
end if
End If
'SQL = "INSERT INTO [XML - Factures] ([Date],[Contenu],[Heure]) VALUES('" & Date() & "','" & StrReponse & "','" & Time() & "')"
'Response.status SQL
'Connexion.Execute(SQL)
Connexion.Close
Set Connexion = nothing
else
' Customer's code
Response.status = "<Reponse>Aucune donnée de reçue</Reponse>"
end if
Response.End
'xxxxx vérifie juste le statut 200 (valeur retournée par default) pour déterminer
'si le POST a été réussi ou non. Comme il s'agit de la valeur par défaut, ne mettez pas de valeur,
'comme Response.status = "200 OK" ou Response.status = "202 Accepté"
%>Hors ligne