-
Notifications
You must be signed in to change notification settings - Fork 27
method NewFldTab
Saulo Martins edited this page Jul 4, 2026
·
1 revision
:NewFldTab(jCab,cCampo,cDescricao,nTamanho,cPicture,cCombo,xStyle,nOrdem,cTipo,cDados,lNewCampo,lHidden,nTamDados)
Inicializa/altera a definição de um campo para ser usada no Alias2Tab. Permite alterar descrição, tamanho, picture, combo, estilo, ordem, ou criar um campo novo calculado.
| Parâmetro | Tipo | Descrição | Obrigatório | Obs |
|---|---|---|---|---|
| jCab | json | Objeto json com as definições de campos (o mesmo passado ao Alias2Tab) | X | |
| cCampo | caractere | Nome do campo no alias | X | |
| cDescricao | caractere | Descrição/título da coluna | nil para não alterar | |
| nTamanho | numérico | Tamanho da coluna no Excel | nil para não alterar | |
| cPicture | caractere | Picture do campo (ex: "@E 999,999,999.99") | nil para não alterar | |
| cCombo | caractere | Combo de opções (ex: "F=Física;J=Jurídica") | nil para não alterar | |
| xStyle | objeto | Estilo da coluna | ||
| nOrdem | numérico | Ordem da coluna | ||
| cTipo | caractere | Altera o tipo de dado (C,N,D,L) | ||
| cDados | caractere | Altera o dado de leitura (expressão AdvPL, ex: "Recno()") | ||
| lNewCampo | lógico | Cria um campo novo (que não existe no alias) | Default .F. | |
| lHidden | lógico | Oculta o campo | Default .F. | |
| nTamDados | numérico | Tamanho dos dados |
Json - definição de campos atualizada
Local jCab
Local oExcel := custom.excel.Xlsx():New(cNomeFile="TstYExcel",cTipo="A")
Local oPosMoeda := oExcel:NewStyle():SetnumFmt(44)
Local cAlias := MpSysOpenQuery("SELECT A1_CGC,A1_COD,A1_PESSOA,A1_NOME,A1_DESC,A1_MSALDO FROM "+RetSqlName("SA1")+" WHERE D_E_L_E_T_=' '")
oExcel:ADDPlan(cNome="SA1",cCor="1F497D")
jCab := jSonObject():New()
oExcel:NewFldTab(jCab=jCab,cCampo="A1_COD",cDescricao="Código do Cliente",nTamanho=10) //Altera descrição e tamanho
oExcel:NewFldTab(jCab=jCab,cCampo="A1_PESSOA",cCombo="F=Física;J=Jurídica") //Define combo
oExcel:NewFldTab(jCab=jCab,cCampo="A1_DESC",cPicture="@E 999,999,999.99") //Define picture
oExcel:NewFldTab(jCab=jCab,cCampo="A1_MSALDO",xStyle=oPosMoeda) //Define estilo moeda
oExcel:NewFldTab(jCab=jCab,cCampo="NEWCAMPO",cDescricao="Registro",nTamanho=10,cPicture="9",cTipo="N",cDados="Recno()",lNewCampo=.T.) //Campo novo calculado
oExcel:Alias2Tab(cAlias=cAlias,lSx3=.T.,jCab=jCab)
(cAlias)->(DbCloseArea())
oExcel:Save(GetTempPath())
oExcel:OpenApp()
oExcel:Close()As propriedades do campo também podem ser ajustadas diretamente no json após a criação, ex: jCab["B1_GRUPO"]["ordem"] := 1.
- Olá Mundo
- Exemplo Ler xlsx
- Métodos Principais
- New - Construtor da classe
- Open - Abrir planilha (senha opcional)
- GetError - Obter erro da última abertura
- AddPlan - Adicionar planilha
- SetValue - Definir valor da célula
- GetValue - Obter valor da célula
- Save - Salvar planilha
- SetPassword - Proteger com senha de abertura
- OpenApp / Close - Abrir no Excel / Fechar objeto
- SetsheetProtection - Proteger planilha contra edição
- Métodos Posicionamento e referência
- Métodos Células e Conteúdo
- Métodos Estilos
- NewStyle
- NewStyRules
- CorPreenc
- EfeitoPreenc
- AddFont
- Alinhamento
- Borda
- AddFmt
- AddFmtNum
- FormatCond / FormatCondDup / FormatCondTempo
- DataBar - Barra de dados
- IconSet - Conjunto de ícones
- Cellprotection
- Métodos Dimensões e Agrupamento
- Métodos Impressão
- Métodos Imagens
- Gráficos (Charts)
- Visão Geral — Tipos suportados
- Exemplo Completo
- NewChart - Criar gráfico pelo atalho
- Métodos comuns (todos os tipos)
- AddSerie - Adicionar série de dados
- SetTitulo / SetLegenda / SetGrade - Título, legenda e grade
- Set3D - Visualização 3D
- Insert - Inserir na planilha
- Tipos de gráfico
- ChartBar - Colunas e barras
- ChartLine - Linhas
- ChartPie - Pizza
- ChartScatter - Dispersão XY
- ChartArea / ChartStock / ChartRadar - Área, Ações e Radar
- ChartDoughnut / ChartOfPie - Rosca e Pizza de Pizza
- ChartBubble / ChartSurface - Bolhas e Superfície
- ChartCombo - Combinação de gráficos
- Tabela formatada
- Preenchimento em massa (bulk)
- Exemplo 1 - Básico
- BulkNewField - Definição de novas colunas do bulk
- DefBulkLine - Criar definição de campos para preenchimento em massa
- SetValueBulk - Definir valor para preenchimento de bulk
- SetBulkLine - Preenche a linha em bulk do Excel
- FlushBulk - Atualiza dados do Excel
- Preenchimento Excel com Query/Alias
- Exemplo 1 - Básico
- Alias2Tab - Preenche o Excel baseado no alias
- NewFldTab - Altera definição de campos ou cria novo campo
- DefSubTotal - Cria subtotal e agrupamento de subtotal
- NewRuleLine - Regra de formação de linhas