Help Center > Foundation Help

S’applique à :

  • Winshuttle Foundation

Table répétitive

Une table répétitive contient d’autres contrôle dans un format de table. Les utilisateurs peuvent insérer plusieurs lignes lors du filtrage du formulaire.

Par exemple, si vous disposez d’un formulaire de demande d’achat, il suffit d’afficher une ligne de table (description d’article, quantité, prix, sous-total) dans le formulaire, mais vous désirez probablement que les utilisateurs puissent ajouter des lignes lors du remplissage du formulaire.

Remarque : vous pouvez également « imbriquer » des tables répétitives les unes dans les autres en faisant glisser un élément de la table répétitive sur une table répétitive existante, puis en spécifiant le nombre de colonnes de la table imbriquée et le nombre de colonnes à étendre sur la table imbriquée (c'est-à-dire la largeur/taille de la table imbriquée dans la table parent.

Lorsque vous utilisez des groupes répétitifs ou des tables répétitives, tenez compte des points suivants.

Lorsque vous utilisez des élémentsrépétitifs de n’importe quel type (par exemple des groupes répétitifs et/ou des tables répétitives) dans un service Web (ou autre part), tenez compte des points suivants :

  • Un champ dans un dossier de contenu répétitif dans l’arborescence Données de formulaire se trouve également dans le formulaire dans un contenu répétitif.
  • Tous les champs non répétitifs dans l’arborescence Données de formulaire ne sont pas répétitifs dans le formulaire.

Le non-respect des instructions ci-dessus peut entraîner un comportement inattendu lors de l'utilisation d'éléments répétitifs lors de l'exécution d'un service Web..

Ajouter un tableau répétitif ou une table répétitive

  1. Dans le canevas, cliquez sur le groupe auquel vous voulez ajouter un table.
  2. Dans le volet Propriétés, cliquez sur l’onglet Éléments.
  3. Cliquez sur Élément Conteneur.
  4. Cliquez sur Table répétitive.
  5. Dans la boîte de dialogue Nouvelle table répétitive, entrez le nombre de colonnes désiré, puis cliquez sur OK.

Conseil d’interrogation d’une source de données SQL : la casse est importante.

Si vous interrogez une source de données SQL et voulez insérer le résultat dans une table sélectionnable ou répétitive, vérifiez que le texte de la requête correspond à la casse des colonnes SQL.

Par exemple, si une colonne de la base de données SQL est COLUMN_1, la requête ne fonctionne pas si elle interroge column_1.

Propriétés de l’élément Table répétitive Composer

Nom : ID de table du formulaire.

Lecture seule : Définit le groupe en groupe accessible en lecture seule (true) ou non (false).

Étendue de colonne : Nombre de colonnes dans le groupe.

Afficher l’en-tête : Si la valeur est true, l’en-tête de la colonne s’affiche.

Emplacement du nouvel emplacement : Emplacement de (+) Ajouter un nouvel élément

Activer la recherche : Active ou désactive une zone de recherche pour rechercher ou filtrer des informations dans une table.

  • True : Active une zone de recherche pour permettre à l’utilisateur du formulaire d’entrer des critères de recherche/filtrage.
  • False : Masque la zone de recherche.

Activer le tri

  • True : Affiche des flèches de tri pour les champs dans un tableau pour permettre aux utilisateurs de trier rapidement les données
  • False : Masque les flèches de tri.

Activer les opérations Excel : Lorsque la valeur est True, affiche les opérations Excel disponibles à l’attention de l’utilisateur du formulaire (Exporte et Charger dans Excel) pour pouvoir charger les données vers un fichier Excel sur le PC local de l’utilisateur du formulaire.

  • Exporter génère le contenu d’une table ou d’un groupe répétitif dans un fichier Excel.
  • Charger charge les données dans un fichier Excel.

Options de chargement Excel : Affiche les options de chargement disponibles (comme sélecteurs de case d’option) à l’attention de l’utilisateur du formulaire lors de l’exécution :

  • Remplacer : Remplace l’ensemble du contenu de la table ou du groupe
  • Mettre à jour : Met à jour chaque ligne/champ tout en conservant les lignes supplémentaires qui se trouvent déjà dans le table ou le groupe.
  • Ajoute : Conserve les lignes existantes et ajoute le nouveau contenu à la fin de la table ou du groupe.

Appliquer le comptage de mots dans le chargement Excel : (True/False) : Si la valeur est True, cette option vérifie que le fichier chargé contient le même numéro de lignes que la table répétitive. S’il existe une discordance, le chargement Excel n’est pas autorisé. Vous pouvez utiliser cette option pour limiter les nouvelles lignes à ajouter ou supprimer dans la table répétitive lorsqu’elle est chargée vers Excel.

Activer les résultats de validation : Affiche un lien de validation à l’attention de l’utilisateur. Si l’utilisateur clique sur Validation, il affiche le nombre d’erreurs de validation détectées dans une table/un groupe répétitif. Cette option est généralement utilisée avec la propriété Paginer le contenu (voir ci-dessous) pour rechercher les erreurs de validation dans les tables volumineuses.

Nombre de lignes par défaut : Nombre de lignes vides créées lors du chargement du formulaire.

Nombre de lignes : Permet de définir le nombre de lignes avant de paginer le contenu.

Paginer le contenu : Si la valeur est True, le contenu de la table s’affiche dans une seule page. Si la valeur est False, le contenu est paginé en fonction du paramètre Nombre de lignes.

Champ de nombre de lignes : Sélectionnez un champ à utiliser comme nombre de lignes pour la table.

Icône d’options de ligne : (gauche ou droite) : Emplacement de l’icône d’options de ligne dans une ligne d’une table sélectionnable (voir ci-dessous).

Styles de groupes

  • Largeur de bordure : Largeur en pixels de la bordure autour du groupe.
  • Style de bordure : Style de la bordure : en tirets, pointillé, uniforme, etc.
  • Couleur de la bordure : Couleur de la bordure.
  • Largeur de la table : Largeur (en pixels) de la table. La valeur par défaut (0) permet à la table de se redimensionner dynamiquement avec le navigateur (conception réactive).

Options avancées

Colonne de clés pour fusion

Cette liste déroulante contient la liste de tous les champs de la table/du groupe répété. Si vous définissez cette « clé », le formulaire exécute une fusion chaque fois que les données de la table sont mises à jour, mais seuls les champs que l’utilisateur a modifiés sont mis à jour.

La valeur de la clé doit être le nom de l’une des colonnes de la table. Chaque ligne doit avoir une valeur de clé unique. La valeur de clé indique la colonne qui contient la clé (par exemple, my:partnumber).

Type de stockage de charge

Cette propriété a pour objet de stocker le contenu répétitif en dehors de formXML. Si vous travaillez dans un environnement dans lequel un magasin de données externes a été configuré pour décharger une partie des données de formulaire, les valeurs dans cette liste déroulante permettent de définir le « magasin » à utiliser. (L’administrateur Winshuttle Workflow doit le configurer.)

Lorsque le formulaire est chargé, le formulaire XML est renseigné avec le contenu « store » afin qu’il soit identique à l’exécution.. Si vous affectez cette propriété la valeur « Par défaut», la propriété globale de configuration de serveur « PayloadStoreType »’ permet d’indiquer quel magasin utiliser lors de l’enregistrement du contenu répété..

Paramètres PayloadStoreType

1 Magasin de pièces jointes

Il s’agit du magasin par défaut si PayloadStoreType n’est pas défini. Les tables externes sont stockées en tant que pièces jointes dans l'élément de liste.

2 Magasin de fichiers

Les tables externes sont stockées dans un système de fichiers réseau. Utilisez la valeur de configuration globale « FileSystemPayloadStoreFolder » pour fournir le chemin UNC du système de fichiers. Vous pouvez également ajouter _ <ListName> pour créer un paramètre spécifique à la liste (par exemple, « FileSystemPayloadStoreFolder_MyTestForm »). Le compte SVAdmin doit avoir un accès en lecture/écriture à ce dossier.

3 Magasin de blobs de base de données

Les tables externes sont stockées sous forme d’objets blob dans une base de données SQL. Utilisez le script suivant pour créer la table et les index nécessaires :

 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Payloads]( [PayLoadID] [uniqueidentifier] NOT NULL, [WebGuid] [uniqueidentifier] NOT NULL, [ListGuid] [uniqueidentifier] NOT NULL, [ItemID] [int] NOT NULL, [Binding] [nvarchar](50) NOT NULL, [Payload] [nvarchar](max) NOT NULL, [LastUpdate] [datetime] NOT NULL, CONSTRAINT [PK_Payloads] PRIMARY KEY CLUSTERED ( [PayLoadID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO ALTER TABLE [dbo].[Payloads] ADD CONSTRAINT [DF_Payloads_PayLoadID] DEFAULT (newid()) FOR [PayLoadID] GO ALTER TABLE [dbo].[Payloads] ADD CONSTRAINT [DF_Payloads_LastUpdate] DEFAULT (getdate()) FOR [LastUpdate] GO CREATE NONCLUSTERED INDEX [IX_Payloads] ON [dbo].[Payloads] ( [WebGuid] ASC, [ListGuid] ASC, [ItemID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO

La table peut être ajoutée à la base de données de workflow ou à une autre base de données. Dans le dernier cas, vous pouvez définir une chaîne de connexion avec la valeur de configuration globale « SqlConnectionPayloadStore ». Vous pouvez également ajouter _<ListName> pour créer un paramètre de liste.

4 Magasin de tables de base de données

Les tables externes sont désassemblées et stockées sous forme d’enregistrements individuels dans une base de données SQL. Utilisez le script suivant pour créer la table et les index nécessaires :

 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[PayloadTables]( [Id] [uniqueidentifier] NOT NULL, [ParentId] [uniqueidentifier] NOT NULL, [Ordinal] [int] NOT NULL, [Binding] [nvarchar](50) NULL,> [Value] [nvarchar](100) NULL, [PayloadLockID] [int] NULL, CONSTRAINT [PK_PayloadTables] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO CREATE NONCLUSTERED INDEX [IX_PayloadTables] ON [dbo].[PayloadTables] ( [ParentId] ASC, [Ordinal] ASC, [Binding] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] GO 

La table peut être ajoutée à la base de données de workflow ou à une autre base de données. Dans le dernier cas, vous pouvez définir une chaîne de connexion avec la valeur de configuration globale « SqlConnectionFormXmlDB ». Vous pouvez également ajouter _<ListName> pour créer un paramètre de liste (par exemple « PayloadStoreType_MyTestForm »).