Aller directement à la fin des métadonnées
Aller au début des métadonnées

Vous regardez une version antérieure (v. /wiki/spaces/UDW60/pages/10703670049/T+l+charger+pi+ces+externes) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 2) afficher la version suivante »

Version minimum

Date de mise à jour

5.6

Fonctionnalité

Visualiser une pièce commerciale externe au format PDF depuis l’historique des pièces commerciales dans Divalto weavy web et mobile.

Accès Divalto weavy web : Ventes > Historique puis dans le détail Action > Consulter le PDF de la pièce liée

Accès Divalto weavy mobile : Historique > PDF externe

Fonctionnement

Script à surcharger pour récupérer le PDF dans le logiciel externe :

// FuncOverload_GetExternalPdfDocumentInfos
// @description     => get pdf document infos from external software
//
// @histoheader_ID  => histoheader_ID
//
// @returns         => 0 : error / 1 : ok  
//

histoheader_ID = TRANSLATE( "<varscript>arg1</varscript>" )

jsonDocReturnedInfos  = VARGET_SHELL( "jsonDocReturnedInfos", "GetExternalPdfDocumentInfos" )


// To complete in overload


ret = "0" // to be changed in overload (0 : error / 1 : ok)
errormessage = "Not supported in standard. You must manage the external pdf to read in overload." // comment in overload

DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "resultOk", ret )
DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "errorMessage", errormessage )
DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "returnedDetails", "THIRDPARTYTYPE", "")
DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "returnedDetails", "DOCUMENTTYPE", "")
DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "returnedDetails", "DOCUMENTNUMBER", "")
DOCUMENT_SET_PROPERTY_TO_OBJECT( jsonDocReturnedInfos, "returnedDetails", "PDFFILE_BASE64", "")

RETURN ( ret ) 

La fonction doit retourner un certain nombre d'éléments afin d’assurer l’ouverture d’un PDF.

Ces informations sont contenues dans returnedDetails :

  • THIRDPARTYTYPE : Type de tiers (Optionnel)

  • DOCUMENTTYPE : Type de document (Optionnel)

  • DOCUMENTNUMBER : N° du document (On contrôle si un n° est bien retourné)

  • PDFFILE_BASE64 : Contenu du pdf au format base 64 (C’est le plus important). C’est cette valeur qui va permettre de visualiser le PDF

Particularités
Une liaison avec Divalto infinity est implémentée en standard.
La fonction de script « FuncOverload_GetExternalPdfDocumentInfos » a été surchargée au niveau DIVINF du master infinity afin de construire le json, d'appeler le webservice infinity « interroger_piece_joint » et de gérer le retour.

Il faut bien sûr gérer l’archivage des documents commerciaux au format PDF côté Divalto infinity pour que l’ensemble de la chaîne soit opérationnel.

A partir de Divalto weavy 6.0, on importe l’historique des devis travaux. Il est donc possible d’ouvrir le PDF associé.

Il existe une fonction de script DIVINF_Func_GetInfinityWebServiceInfo qui retourne les informations nécessaires au lancement des webservices infinity.
Elle permet de retourner :

  • URL du webservice : Cette url est enregistrée dans la table sw_data_externalurl avec le code "WSDIVA". Elle est paramétrée lors du provisioning dans infinity (zoom des chemins). Elle est importée dans weavy par ControlCenter External URL vX.6 puis backend 20. Base Info - ExternalUrl.

  • Action du webservice : cette action est définie en dur avec WEB_SERVICE_INFINITY. S'il faut la modifier il faudra surcharger cette fonction.

// DIVINF_Func_GetInfinityWebServiceInfo
// @description => Get infos for webservice infinity
// @returns     => 0 : error / 1 : ok
// @returned variables
// InfinityWebServiceUrl : Infinity server URL for the call of the WebService
// InfinityWebServiceAction : Infinity diva action to push in the web method
// InfinityWebServiceErrorMsg : Error message if returns is 0

InfinityWebServiceUrl     = VARGET_DBSQL( "select url from sw_data_externalurl where codeexternalurl='WSDIVA'" )
InfinityWebServiceAction  = "WEB_SERVICE_INFINITY"
InfinityWebServiceErrorMsg   = ""
ret = 1

IF (EQUALS( InfinityWebServiceUrl, "" )) THEN
  InfinityWebServiceErrorMsg = "Infinity server URL for the call of the WebService is not informed (Table=sw_data_externalurl, Code='WSDIVA')"
  ret = 0
ENDIF

VARSET_SHELL( "InfinityWebServiceUrl", InfinityWebServiceUrl, "InfinityWSinfo" )
VARSET_SHELL( "InfinityWebServiceAction", InfinityWebServiceAction, "InfinityWSinfo" )
VARSET_SHELL( "InfinityWebServiceErrorMsg", InfinityWebServiceErrorMsg, "InfinityWSinfo" )

RETURN( ret )
  • Aucune étiquette