Skip to main content

Export des données du plugin Mondial Relay

More
4 years 1 day ago - 3 years 11 months ago #345301 by walkyrie
Bonjour!

J'ai fait l'acquisition du plugin Mondial Relay, qui marche bien et je me trouve face à une difficulté : Je voudrai exporter la liste de mes commandes pour l'importer (après mise en forme du CSV) dans l'interface Mondial Relay. Mais voilà le Hic : sauf erreur de ma part, les infos du Point Relay (n°ID, nom, adresse) ne sont pas exportable depuis les actions de masse... est-ce que je me trompe? Si non, comment pourrais-je faire pour récupérer ces infos nécessaires?

Merci d'avance pour votre réponse, bonne journée!
Last edit: 3 years 11 months ago by walkyrie.

Please Log in or Create an account to join the conversation.

More
4 years 1 day ago #345304 by nicolas
Bonjour,

Alors oui et non. Les données du point relai sont stockés dans la colonne order_shipping_params qui est exportable. Mais les données sont sérialisées ( en.wikipedia.org/wiki/Serialization ). Donc ce n'est pas une colonne pour l'id du point relai, une pour le nom, une pour l'adresse. Donc c'est potentiellement exploitable mais ça dépend de ce que vous voulez en faire suite à l'export.

Please Log in or Create an account to join the conversation.

More
4 years 1 day ago #345317 by walkyrie
Merci pour cette réponse... ce que je veux en faire, c'est importer mes colis en csv sur l'interface de Mondial Relay pour pas avoir à faire des copié-collés à longueur de journée depuis mon site vers celui des expéditions de Mondial Relay....
Dans le champ "order_shipping_params" j'ai ce type de chaîne : O:8:"stdClass":1:{s:6:"prices";a:1:{s:3:"5@0";O:8:"stdClass":2:{s:14:"price_with_tax";s:7:"0.00000";s:3:"tax";d:0;}}}
Je comprends bien que c'est un encodage, mais je doute que, une fois décodé, on en sorte une adresse ou un nom de point relay...?

Please Log in or Create an account to join the conversation.

More
4 years 1 day ago #345320 by nicolas
Bonjour,

Etes-vous sûr que vous regardez le order_shipping_params pour une commande avec un point relai Mondial Relay de sélectionné ?
Mais bon, même avec les données dans le order_shipping_params, ce sera aussi "encodé".
Ce qu'il faudra faire, c'est soit:
- développer quelque chose pour permettre aux plugins de modifier à la volée le CSV exporté dans les actions de masse et modifier le plugin Mondial Relay pour implémenter cela pour qu'il rajoute ses colonnes.
- développer un script VBA sous Excel avec des regex ( www.automateexcel.com/vba/regex/ ) pour extraire les informations du CSV.

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago #345598 by walkyrie
Bonjour,

En effet, dans les cellules de la colonne "order_shipping_params" il y a un retour à la ligne, et j'y trouve les infos que je cherche (ex : s:12:"mondialrelay";a:1:{i:0;a:8:{s:2:"id";s:6:"083291";s:5:"addr1";s:12:"NOMXXX";s:5:"addr2";s:0:"";s:5:"addr3";s:28:"route de st georges d'orques";s:5:"addr4";s:23:"cc les portes du soleil";s:8:"postcode";i:34990;s:4:"city";s:8:"XXXNOM";s:7:"country";s:2:"FR";}}})

J'ai plus qu'à aller extraire tout ça en VB, ça va le faire.

Merci!

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago - 3 years 11 months ago #345919 by walkyrie
Ca marche! Un peu laborieux à codé en VB sous excel, mais ça permet de créer un import exploitable par Mondial Relay...

Je vous mets la partie du code spécifique au découpage du champ mondial relay ici, à toutes fins utiles :
Code:
Sub decompmr() Dim Caractere As String 'le caractère recherché For L = 2 To 250 LaPositionentree = 0 LaPositionavant = 0 I = 0 J = 0 K = 2 chaine = Cells(L, 16) Caractere = """" N = 21 Do LaPositionentree = InStr(LaPositionentree + 1, chaine, Caractere) If LaPositionentree = 0 Then Exit Do I = I + 1 J = J + 1 If I = N Then J = 1 LaPositionavant = LaPositionentree End If If I > N Then resnom = Mid(chaine, LaPositionavant + 1, LaPositionentree - LaPositionavant - 1) If J Mod 2 = 0 Then If resnom = "postcode" Then resnom = Mid(chaine, LaPositionavant + 13, LaPositionentree - LaPositionavant - 4) ' MsgBox "" & resnom Cells(L, K) = resnom K = K + 1 End If LaPositionavant = LaPositionentree End If Loop Until I = N + 30 Next End Sub
Last edit: 3 years 11 months ago by nicolas.
The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.288 seconds
Powered by Kunena Forum