Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Sommaire :

...

Dans le cas d’un fonctionnement autonome sans message EDI :

Le SQL avant peut être utilisé pour alimenter les tables sources des données. Par défaut les tables sources sont les tables «  #NOMTableDestination ». Si vous souhaitez alimenter COME, la source est « #COME » puis « COMC », la source est #COMC.

Exemple : La tâche « CDE_RETOUR ».

Dans cet exemple, suite à la création d’un retour client avec échange, le système peut générer une commande client d’échange après validation du retour. Cette création est gérée par une tâche.

Les tables #COME et #COMC sont alimentées avec les données de l’échange , il s’agit des tables temporaires de sources de données.

Code Block
declare @NoCommande VARCHAR(30),@CodeClient VARCHAR(30),@ModeGestion VARCHAR(30)='',@BonRetour VARCHAR(30) ,@Option_ch VARCHAR(MAX)
declare @GestionDevise int=0

select @ModeGestion=GrilleOuTarif , @GestionDevise=GestionDevises
from paramg where NumeroFiche=1

set @Option_ch=@Option$
while @Option_ch<>''
begin  
    select @BonRetour=dbo.GetColValue(@Option_ch,';',1) 
	select @CodeClient=dbo.GetColValue(@BonRetour,'|',1)
          ,@NoCommande =dbo.GetColValue(@BonRetour,'|',2)
	
	insert into #COME(CodeClient,NoCommande,EcoParticipation,Confirmee)  select @CodeClient, @NoCommande ,'N','O'

    insert into #COMC(CodeClient,NoCommande,NoLigneCommande , CodeArticleprestto,QuantiteCommandee,PrixUnitEnFrancs,PrixUnitEnDevise,PrixNetON,PrixSaisiCalc,CodeCentrePayeur)
    select CodeClient,NoBonRetour,1,CodeArticle,QteRetournee
	       ,case when @GestionDevise<>3 THEN 0 ELSE NULL END
	       ,case when @GestionDevise= 3 THEN 0 ELSE NULL END
	       ,case when @ModeGestion='T' THEN  'O' ELSE NULL END
	       ,case when @ModeGestion='T' THEN  'S' ELSE NULL END
		   ,BDEC.CodeCentrePayeur
    from RETOURCLIE 
	LEFT JOIN BDEC on BDEC.NoBonExpedito=RETOURCLIE.NoBonExpedito 
					AND BDEC.NoLigne=RETOURCLIE.NoLigne
					AND BDEC.NoAccuseRecepto=RETOURCLIE.NoAccuseRecepto
					AND BDEC.CodeArticleprestto=RETOURCLIE.CodeArticle
					AND case when BDEC.CodeLot = '*' then '' else BDEC.CodeLot end=
					case when RETOURCLIE.CodeLot='*' then '' else RETOURCLIE.CodeLot END
	where NoBonRetour=@NoCommande
	
   select @Option_ch=SUBSTRING(@Option_ch,len(@BonRetour)+2,len(@Option$))
END

Les structures des données à intégrer des tables sources sont compatibles avec les tables destinations (inutile d’alimenter tous les champs de la table cible), les noms des colonnes matchent. L’intégration des données effectue le mappage automatique, et alimente les données dans la destination.

Remarque :

Sans utiliser les tables « # », en standard Silog livre également des tables permanentes dédiées à l’intégration des tâches. Ces tables portent le même nom que les tables standards de Silog précédées du suffixe « SIL_JOB_ », la structure est compatible avec la structure des tables de destination. Ces tables sont utilisées pour intégrer les données de la nouvelle mobilité Silog.

Image RemovedImage Added

Ces tables peuvent être utilisées comme source de données. Dans ce cas il faut déclarer dans le corps de la tâche les tables sources utilisées pour l’entête et le corps des applications concernées.

Ces tables contiennent des champs supplémentaires qui peuvent être gérés dans les groupes SQL avant et après.

Image Modified

Par exemple pour l’intégration des Articles depuis la table SIL_JOB_ARTICLE : il est possible, entre autres, de gérer le flag d’intégration des données et l’idEvent de la tâche d’intégration, pour assurer une traçabilité.

Exemple pour Articles :

SQL avant

UPDATE SIL_JOB_ARTICLE SET IdEvent=@EDI_EVENTE.IdEvent WHERE Flag=0 AND IdEvent IS NULL 

Pour bien comprendre, il est possible de consulter des exemples de tâches qui utilisent ces tables dans votre base de données..

...

  • Pour intégrer tous les fichiers « txt » d’un répertoire quel que soit le nom.

...

  • Nombre de fichiers (Intégration uniquement de messages EDI) : Pour ne traiter qu’un certain nombre de fichiers par tâche d’intégration.

  • Taille des fichiers Ko (Intégration uniquement de messages EDI) : Pour ne traiter que les fichiers qui ne dépassent pas la taille saisie en Ko.

  • Option feuille excel (Intégration uniquement de messages EDI) : Lorsque la tâche d’intégration concerne un fichier xls, saisir les noms des feuilles à intégrer séparés par des virgules, par défaut toutes les feuilles sont traitées.

  • Répertoire d’export (Emission uniquement de messages EDI) : Saisir le chemin complet des fichiers à émettre.

Exemple :

...

  • Répertoire (Emission uniquement de messages EDI),

...

  • Exemple  ftp: Il s’agit d’un répertoire présent sur un site ftp. Si cette zone est alimentée, alors les fichiers émis ou intégrés sont déplacés dans ce répertoire.

Pour le sftp remplacer ftp par sftp.

La syntaxe doit être la suivante :

...

Remarque : Il est possible de saisir une adresse URL d’un fichier à télécharger. Ce fichier sera téléchargé dans le répertoire renseigné dans la tâche.

Dans cette version seuls les fichiers au format XML sont pris en charge lorsqu’ils proviennent d’une adresse de type URL.

 Voir l’exemple de la tâche EDI standard dans votre ERP qui permet de mettre à jour les cours des devises nommé : SIL_IMPORT_TAUX_BCE.

  •  Répertoire d’archives : Saisir le chemin du répertoire d’archives.

Exemple :

...

  • Dans le cas des messages de type intégration, le listage du bas permet de visualiser le corps de la tâche avec l’ordre dans lequel les applications seront traitées par macro-commande dans la tâche. Cet ordre est modifiable.

...

Les boutons Magnétoscope “haut” et “bas” haut” et “bas permettent de modifier l’ordre de traitement de l’application sélectionnée dans le listage en faisant monter ou descendre la ligne concernée.

 Dans Dans l’exemple ci-dessus, il faut d’abord traiter l’intégration des familles avant d’intégrer les articles.

L’ordre doit donc être le suivant :

 Ordre Ordre 1 => Application « Famille ».

Ordre 2 => Application « Article ».

  • Le menu contextuel de ce listage :

    • Il est possible d’ouvrir le corps pour modifier/Créer une enregistrement dans le corps.

    • Il est possible d’exécuter la tâche de la ligne sélectionnée ou d’exécuter toutes les tâches jusque la ligne sélectionnée en mode trace ou non.

...

2.3. L’onglet « Editions »

...

Remarque

Dans la structure des tables « SIL_JOB_ » , il existe un champ nommé « Lien » pour identifier les données liées entre l’entête et le corps.

Dans ce cas la syntaxe est la suivante pour l’application Bon d’expédition :

Par exemple :

  • image-20240201-085315.png

    Bien respecter l’ordre C.Lien=E.Lien et non E.Lien=C.Lien.

 

  • Les actions (uniquement pour les intégrations).

...