PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
This content has been translated automatically. Click here to view the French version.
  • Handling a Table through programming
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Inserts a table into a Word Processing document ir replaces the specified fragment with a new table.
Caution: This documentation presents the last features of the Word Processing control. Make sure that all the necessary modules are updated.
Example
// Insère un tableau à la position 1 de taille 3x3
DocInsertTable(TT_Tableau, 1, 3, 3)
// Insère un tableau à la position du curseur de taille 3 colonnes et 2 lignes
DocInsertTable(TT_Tableau, TT_Tableau.Curseur, 3, 2)
Syntax

Inserting a table into a a Word Processing document Hide the details

<Result> = DocInsertTable(<Document> , <Position> [, <Number of columns> [, <Number of rows>]])
<Result>: docFragment variable
Versions 24 and later
docFragment variable with the inserted fragment.
New in version 24
docFragment variable with the inserted fragment.
docFragment variable with the inserted fragment.
<Document>: Document variable or character string
Document to use. This document corresponds to:
  • WINDEV the name of a Word Processing control.
  • a variable of type Document.
<Position>: Integer
Position where the table will be inserted. This position is expressed in number of characters.
<Number of columns>: Optional integer
Number of columns in the table. This parameters corresponds to 1 by default.
<Number of rows>: Optional integer
Number of rows in the table. This parameters corresponds to 1 by default.

Replacing the existing fragment by a new table Hide the details

<Result> = DocInsertTable(<Fragment> [, <Number of columns> [, <Number of rows>]])
<Result>: docFragment variable
Versions 24 and later
docFragment variable with the inserted fragment.
New in version 24
docFragment variable with the inserted fragment.
docFragment variable with the inserted fragment.
<Fragment>: docFragment variable
Name of the Variable of type docFragment corresponding to the fragment at handle. The current fragment content will be replaced with the created table.
<Number of columns>: Optional integer
Number of columns in the table. This parameters corresponds to 1 by default.
<Number of rows>: Optional integer
Number of rows in the table. This parameters corresponds to 1 by default.
Remarks

Handling a Table through programming

A table in a Word Processing document can be handled by the WLanguage functions for managing arrays.
For example:
Example:
// Insère un tableau à la position 1 de taille 3x3
DocInsertTable(TT_ExempleTT, 1, 3, 3)
 
// Définition d'un fragment correspondant au tableau
f is docFragment(TT_ExempleTT.Valeur, TT_ExempleTT.Curseur, 0)
 
let para <- f.Paragraph[1]
IF para.Table = Null THEN
RETURN
END
 
doc is Document <- TT_ExempleTT.Valeur
 
// Ajoute une ligne au tableau
nIndice is int = Add(para.Tableau.Lignes)
 
// Saisie dans la cellule 2,2
para.Tableau.Cellules[2,2].Contenu.Texte = "Je suis dans la cellule 2,2"
 
// Supprime la ligne 3
Delete(para.Tableau.Lignes, 3)
 
// Supprime la colonne 3
Delete(para.Tableau.Colonnes, 3)
 
// Supprime le tableau entier où se trouve le curseur
Delete(doc.Paragraph, para.ParagraphIndex)
Example for creating a table in a document with the content of a Table control:
// Une fenêtre contient un champ Table mémoire nommé TABLE_Démo
// et un champ Traitement de texte nommé TT_Démo
// Le code suivant ajoute un tableau dans le champ Traitement de texte avec:
// - en première ligne du tableau, le titre des colonnes du champ Table,
// - le contenu du champ Table dans les lignes suivantes du tableau.
 
MonDoc is Document
cTable is Control <- TABLE_Démo
pCol is Control
 
FragmentDeb is docFragment(MonDoc,1)
FragmentDeb.Formatting.FontSize = 24
FragmentDeb.Formatting.TextColor = DarkRed
FragmentDeb.Text = "Tableau dans TTX avec " + cTable.Libellé + CR + CR
 
// Insertion du tableau dans le document en mémoire ...
DocInsertTable(MonDoc, 20, TableCount(cTable, toColumn), cTable.Occurrence + 1)
 
FOR EACH para OF MonDoc.Paragraph
IF para.Tableau <> Null THEN
// Pour toutes les colonnes du champ table ...
FOR nColonne = 1 _TO_ TableCount(cTable, toColumn)
 
// Première ligne du tableau contient le titre des colonnes
pCol <- TableEnumColumn(cTable, nColonne)
para.Tableau.Cellules[1, nColonne].Contenu.Texte = pCol.Libellé
 
// Remplissage de toutes les lignes de cette colonne
FOR nLigne = 1 _TO_ cTable.Occurrence
para.Tableau.Cellules[nLigne+1, nColonne].Contenu.Texte = pCol[nLigne]
END
END
BREAK
END
END
 
// Document en mémoire affecté au champ Traitement de texte
TT_Démo = MonDoc
Component: wd270mdl.dll
Minimum version required
  • Version 22
This page is also available for…
Comments
Click [Add] to post a comment