4D Write Pro – Um assistente para criar tabelas com dados

Nas últimas versões do 4D Write Pro, muitas características relacionadas a tabelas foram adicionadas. Pode facilmente criar tabelas baseadas em dados de banco de dados usando contextos, fontes de dados, e fórmulas.

Isto é tão fácil que muitos querem apenas deixar os seus usuários finais usar a funcionalidade tal como está. Mas compreendemos que, por vezes, isto pode ser um desafio para os usuários que não têm experiência em formatação de fontes de dados ou fórmulas para vários componentes de tabelas. Para resolver isso, desenvolvemos uma solução que vem com 4D v20 R2: o novo assistente de tabelas.

O assistente está disponível para usuários finais; eles podem tirar vantagem de modelos adaptados para seu uso e negócios fornecidos pelo desenvolvedor. A configuração de modelos inclui:

  • definir a dataclass e atributos da dataclass, (ler tabelas e campos)
  • traduzir a dataclass, os atributos da dataclass e os nomes das fórmulas,
  • preparar fórmulas adaptadas à atividade,
  • desenhar estilos gráficos.

 

Continue a ler para saber mais e não se esqueça de consultar a HDI e ver o vídeo de bônus que o guiará através de várias possibilidades.

HDI: Assistente de tabelas

Interface do assistente de tabelas WP

O usuário pode acessar ao assistente através do menu “Inserir tabela” na barra de ferramentas ou na barra lateral.

Create a new table menu

A interface é bastante simples e surpreendente. O usuário seleciona um modelo ou classe de dados e um tema. De seguida, verifica os campos a serem apresentados como colunas. Também pode ordenar as colunas. Em seguida, pode definir o número de linhas de cabeçalho, linhas de resumo posicionadas acima ou abaixo dos dados e linhas extra. Depois, escolhe as fórmulas a apresentar nas linhas de resumo ou nas linhas suplementares. Por fim, clica no botão “Inserir” para adicionar a tabela ao documento WP.

blank

Depois de a tabela ter sido integrada no documento, o usuário pode modificar ou personalizar o seu estilo. As ferramentas de formatação da barra de ferramentas e da barra lateral continuam disponíveis.

Aqui está um vídeo para demonstrar as possibilidades:

Pode descarregar a HDI e repetir o exemplo do vídeo.

Como configurar

O assistente é composto por 3 tipos de ficheiros de configuração.

arquivos modelo

O arquivo de modelo permite-lhe definir o seguinte:

  • a fórmula que retorna uma seleção de entidade utilizada como fonte de dados da tabela,
  • os atributos da dataclass que podem ser utilizados como colunas da tabela,
  • a fórmula para linhas de resumo,
  • as fórmulas que podem ser utilizadas num menu contextual de linhas de resumo,
  • as fórmulas que podem ser utilizadas num menu contextual de linha de transporte,
  • e as fórmulas que podem ser utilizadas num menu contextual de linha extra.

 

Os arquivos de modelos devem ser armazenados na pasta “Resources/4DWP_Wizard/Templates” do seu projeto.

Aqui está um breve exemplo do aspecto do seu arquivo:

{
    "tableDataSource": "ds.People.all().orderBy(\"toCompany.name asc, continent asc, country asc, city asc\")",
    "columns": [{
            "check": true
            "header": "Firstname",
            "source": "This.item.firstname"
        }, {
            "check": true
            "header": "Lastname",
            "source": "This.item.lastname"
        }, {
            "check": true
            "cabecera": "Salary",
            "source": "String(This.item.salary;\"###,###.00\")"
        }
    ],
    "breaks": [{
            "label": "Company",
            "source": "This.item.toCompany.name"
        }
    ],
   "breakFormulas": [{
            "label": "Company",
            "source": "This.item.toCompany.name"
	}, {
            "label": "Sum of salaries",
            "source": "String(This.breakItems.sum(\"salary\"); \"###,###.00\")"
        }
    ],
    "bcorFormulas": [{
            "label": "Sum of salaries",
            "source": "String(This.tableData.sum(\"salary\"); \"###,###.00\")"
        }
    ],
    "extraFormulas": [{
            "label": "Sum of salaries",
            "source": "String(This.tableData.sum(\"salary\"); \"###,###.00\")"
        }
    ]
}

Consulte esta página de documentação detalhada para saber mais sobre o formato JSON e os nomes dos atributos.

Ficheiros de tradução

Os arquivos de tradução são utilizados para traduzir os nomes de modelos, temas, tabelas, campos e fórmulas, se necessário. Deve adicioná-los à pasta “Resources/4DWP_Wizard/Translations” do seu projeto.

Se o usuário selecionar uma classe de dados na interface. O arquivo de tradução tem uma segunda função. Pode filtrar a dataclass e os atributos da dataclass propostos ao usuário. Por exemplo, para esconder os IDs das tabelas.

Nota: este comportamento é semelhante aos comandos SET TABLE TITLES e SET FIELD TITLES para aqueles que conhecem a linguagem clássica.

Aqui está um exemplo de um arquivo de tradução:

{
   "tables": [{
            "original": "People",
            "translation": "Pessoas"
        }
    ],
   "fields": [{
            "original": "lastname",
            "traducción": "Sobrenome"
        }, {
            "original": "firstname",
            "translation": "Nome"
        }, {
            "original": "salary",
            "translation": "Salário"
        }, {
            "original": "company",
            "translation": "Empresa"
        }
    ],
   "formulas": [{
            "original": "Sum of salary",
            "translation": "Soma dos salários"
        }
    ]
}

Na documentação, todos os atributos possíveis são listados e explicados.

Ficheiros de temas

Uma lista de temas é fornecida por padrão no componente 4D Write Pro Interface. No entanto, pode criar seu próprio tema colocando-os na pasta “Resources/4DWP_Wizard/Themes” dentro de seu projeto.

Os arquivos de temas permitem definir os seguintes atributos WP para um cabeçalho, dados, carry-over, resumo e linhas extra:

  • textAlign
  • backgroundColor
  • borderColor
  • borderStyle
  • borderWidth
  • font
  • color
  • fontFamily
  • fontSize
  • padding

E também, aqui está um exemplo do arquivo do tema:

{
   "default": {
           "backgroundColor": "#F0F0F0",
           "borderColor": "#101010",
           "borderStyle": 1,
           "borderWidth": "0.5pt",
           "font": "Times New Roman",
           "color": "#101010",
           "fontFamily": "Times New Roman",
           "fontSize": "7pt",
           "padding": "2pt"
    },
   "table" (tabela): {
           "backgroundColor": "#E1EAF3"
    },
   "header1": {
           "textAlign": 2,
           "borderColor": "#41548F",
           "borderWidth": "1.5pt",
           "backgroundColor": "#979BA9",
           "color": "#F4F4FF",
           "font": "Times New Roman Bold"
    },
   "data": {
           "fontSize": "13pt",
           "textAlign": 0
    },
   "break1": {
           "textAlign": 2,
           "fontSize": "15pt"
    }
}

Tal como para outros arquivos, a gramática JSON está disponível na documentação.

Próximo…

O assistente de tabela WP é parte do componente 4D Write Pro Interface. As fontes estão disponíveis no Github se quiser fazer adaptações.
Sinta-se à vontade para compartilhar suas impressões ou comentários no fórum.

Vanessa Talbot
• Proprietário do produto - Vanessa Talbot entrou ao time 4D Program em Junho de 2014 como Proprietária do Produto e está a cargo de escrever as histórias dos usuários e depois traduzi-las em especificações funcionais. Seu papel também é garantir que a implementação da funcionalidade entregue cumpra com as necessidades do cliente. Desde sua chegada, trabalhou na definição de funcionalidades chaves em 4D. Trabalhou na maioria das novas funcionalidades multithread preemptivo e também em um tema muito complexo: a nova arquitetura para a aplicação engined. Vanessa é formada pela Telecom Saint-Etienne. Começou sua carreira no Instituto de Investigação Criminal como desenvolvedora do departamento audiovisual. Também trabalhou em meios de comunicação e no âmbito médico como especialista em assistência técnica, produção e documentação de novas funcionalidades.