Traitement des données d'import à l'aide de VBscript

Si les données à importer n'ont pas la bonne structure, vous pouvez les modifier à l'aide d'un script VB.

Il peut arriver que les champs à importer n'aient pas à la bonne structure. Quelques exemples :

  • Le code postal et la localité sont intégrés dans un même champ, alors que Profit s'attend à ce que vous fournissez ces données de façon séparée.
  • Vous souhaitez modifier des codes, par exemple parce que vous voulez placer devant chaque code débiteur (numérique) la lettre D et devant chaque code employé la lettre M.

Pour un import unique, souvent, le plus facile est de prétraiter les données dans Microsoft Excel par exemple. En effet, Excel offre de nombreuses fonctionnalités pour scinder ou pour combiner des champs par exemple et pour effectuer des actions de recherche et de remplacement sur des colonnes.

Pour un import que vous effectuez plus fréquemment, vous pouvez faire exécuter ces actions à l'aide d'un script que vous intégrez dans l'assistant d'import. Pour cela, vous utilisez le langage VB script.

Contenu

Création d'un VBscript

Vous enregistrez un VBscript dans la définition d'import. Pour cela, il faut maîtriser VB.

Configuration d'un script VB :

  1. Démarrez la fonction import.
  2. Suivez les étapes de l'assistant jusqu'à ce que vous arrivez à l'étape destinée à la configuration du script.
  3. Sélectionnez la case à cocher Utiliser script.
  4. Inscrivez le script dans la case Editeur script.

    Ajoutez des champs à l'aide des listes de recherche à base de champs (en haut à gauche). Vous disposez de deux listes, une liste avec des champs dans Profit et une autre liste avec des champs dans le fichier d'import. Si vous ajoutez des champs à l'aide de ces listes, ceux-ci sont ajoutés directement dans l'éditeur de scripts avec la syntaxe appropriée.

  5. Vous pouvez ajouter un commentaire si celui-ci est précédé du signe '' (guillemet double).
  6. Vérifiez le script à l'aide du bouton Tester script. Si le script contient une erreur, un message d'erreur s'affiche à l'écran, et vous pouvez alors corriger le script. Si aucune erreur n'est détectée dans le script, vous recevrez également un message.

    Attention: 

    À l'aide du bouton Tester script, vous effectué uniquement un contrôle technique. Cela ne vous permet pas de vérifier si l'opération aboutit effectivement au résultat souhaité. Il faut systématiquement tester une définition d'import dans un environnement de test pour vérifier le résultat.

  7. À l'aide de Reset script, vous pouvez supprimer les modifications apportées au script.
  8. Exécutez les étapes restantes de la procédure d'import.

Exemple d'un script VB :

Le fichier d'import contient des relations de vente avec un code numérique ; ces codes se trouvent dans le deuxième champ du fichier. Toutefois, vous souhaitez que toutes les relations de vente dans Profit reçoivent un code commençant par la lettre D, suivi du code provenant du fichier d'import.

  1. Placez le pointeur sur la ligne vide sous Sub Import()
  2. Cliquez dans la liste de recherche (Vers champs) sur DbId:Debiteurnummer (Verkooprelatie).
  3. De cette manière, vous ajoutez le nom de champ ToFields("DbId").value au script.
  4. Placez le pointeur à la fin de ce nom de champ
  5. Saisissez : = D +
  6. Ouvrez la liste de recherche (De champs).
  7. Cliquez sur le champ à importer avec le code de débiteur.
  8. De cette manière, vous complétez le nom de champ FromFields("VELD_2").Value .

    Le script VB est prêt. Le texte complet du script est :

    Sub Import()

    ToFields("DbId").Value = "D" + FromFields("VELD_2").Value

    End Sub

Importation d'un champ mémo avec plusieurs lignes les unes en-dessous des autres à l'aide d'un script

Il est possible d'importer plusieurs lignes dans un seul champ mémo et de placer les lignes les unes en dessous des autres au lieu de les unes à côté des autres. Pour ce faire, vous utilisez un script dans la définition d'import.

Importation d'un champ mémo avec plusieurs lignes les unes en-dessous des autres à l'aide d'un script :

  1. Placez dans le fichier CSV à importer un signe déterminé à la fin des lignes. Utilisez à cet effet un signe unique qui ne figure pas ailleurs dans le fichier, par exemple # ou ^.
  2. Activez l'option-script dans la définition d'import à l'aide de l'assistant d'import.
  3. Par exemple, saisissez la ligne suivante dans le script. Ce script remplace alors le signe correspondant par la création d'une nouvelle ligne (vbcrlf).

    Exemple : 

    Avec # comme séparateur :

    <veld>=replace(<veld>,"#",vbCrLf)

    Si à l'export, il y a un saut de ligne pour la création d'une ligne nouvelle dans un champ mémo (souvent visible sous forme d'un bloc dans Profit), vous pouvez remplacer le saut de ligne par crlf :

    <veld>=replace(<veld>,vbLf,vbCrLf)

Aller directement à

  1. Import par l'intermédiaire d'une nouvelle définition d'import
  2. Ajout d'une définition d'import et import d'un fichier
  3. Indication des séparations entre les champs
  4. fichier ASCII à longueurs fixes
  5. Options d'import pour les champs
  6. Configuration du VB script
  7. Détermination des données générales d'une définition d'import
  8. Contrôle de la validité des définitions d'import