Desde 4D v16 R4, é possível criar tabelas através da programação nos seus documentos 4D Write Pro. A criação da tabela inteira ou apenas de certas células poderia ser feita durante a criação do documento, mas talvez queira também gerir as suas tabelas posteriormente. Agora, é fácil manipular tabelas num documento existente, alterar o estilo ou a cor da margem, alterar o tamanho da fonte ou torná-la ousada, etc.
A programação 4D Write Pro é altamente baseada em“gamas”. Após gamas de parágrafos e gamas de imagens, 4D v17 introduz um novo tipo de gama: gamas de tabelas, devolvidas por um novo comando: WP Create table range. As tabelas de estilo são agora simples com este novo comando e novo tipo de gama!
Criar uma gama de tabelas
Semelhante às gamas existentes WP Create paragraph range e WP Create picture range ordens, WP Create table range devolve um intervalo que aborda apenas as tabelas contidas no intervalo passado como parâmetro. O parâmetro de entrada pode ser ou um documento, um elemento (cabeçalho, corpo, rodapé, etc.) ou qualquer outro intervalo.
Consulte a nossa base de dados de exemplos para saber mais sobre este comando, bem como sobre os novos comandos, WP Get elements e WP Get element by ID, introduzido neste post do blogue.
Exemplo de intervalo de tabela
exemplo de código
O exemplo seguinte demonstra como criar uma gama contendo todas as tabelas de um documento existente. Uma vez criada, a gama pode ser utilizada para estilizar as tabelas e o seu conteúdo, utilizando atributos padrão 4D Write Pro.
// Load an existing document containing tables
wpDoc:=[CLIENTES]documento
tableRange :=WP Create table range(wpDoc)
// Style all tables in the document: style border, cell background color, cell text font size, etc.
WP SET ATTRIBUTES (tableRange;wk border style;wk solid;wk border color; "Blue";wk border width; "3px")
WP SET ATTRIBUTES(tableRange;wk background color; "#f0f0ff")
WP SET ATTRIBUTES (tableRange;wk table align;wk center)
WP SET ATTRIBUTES (tableRange;wk font size;12)
WP SET ATTRIBUTES (
tableRange;wk text transform;wk capitalize)