Controles ERP / Negocios NOVO

A aba ERP / Negocios fornece componentes de nivel empresarial para criar aplicacoes de contabilidade, faturamento, relatorios e automacao de negocios. Estes componentes nao visuais lidam com geracao de documentos, processamento de dados, auditoria e agendamento.

TPreprocessor CT_PREPROCESSOR = 90

Motor de pre-processamento de codigo fonte. Processa diretrizes #define, #include, #ifdef e regras de traducao personalizadas antes da compilacao.

PropriedadeTipoPadraoDescricao
cSourceString""Codigo fonte para pre-processar
cOutputString""Saida pre-processada (somente leitura)
aDefinesArray{}Simbolos #define ativos
aIncludePathsArray{}Caminhos de busca para arquivos #include
lStrictModeLogico.F.Erro em simbolos nao definidos
EventoCategoriaDescricao
OnProcessAcaoPre-processamento concluido
OnErrorErroErro de pre-processamento encontrado
OnIncludeAcaoArquivo include resolvido

TScriptEngine CT_SCRIPTENGINE = 91

Interpretador de scripts em tempo de execucao. Executa codigo Harbour/xBase em tempo de execucao para regras de negocios dinamicas, formulas e calculos definidos pelo usuario.

PropriedadeTipoPadraoDescricao
cScriptString""Codigo fonte do script
xResultQualquerNILUltimo resultado de execucao
lSandboxedLogico.T.Restringir acesso a arquivos/rede
nTimeoutNumerico5000Tempo maximo de execucao (ms)
hVariablesHash{=>}Variaveis disponiveis para o script
EventoCategoriaDescricao
OnExecuteAcaoExecucao do script concluida
OnErrorErroErro em tempo de execucao no script
OnOutputAcaoSaida do script (ex. comando ?)

TReportDesigner CT_REPORTDESIGNER = 92

Motor de layout de relatorios visuais. Define bandas (cabecalho, detalhe, rodape, grupo), campos, rotulos e imagens para relatorios imprimiveis.

PropriedadeTipoPadraoDescricao
cReportFileString""Caminho para arquivo de definicao de relatorio (.hbr)
cTitleString""Titulo do relatorio
nPageWidthNumerico210Largura da pagina em mm (padrao A4)
nPageHeightNumerico297Altura da pagina em mm
nOrientationNumerico00=Retrato, 1=Paisagem
oDataSourceObjetoNILFonte de dados (tabela, consulta, array)
EventoCategoriaDescricao
OnBeforePrintAcaoAntes do inicio da geracao do relatorio
OnAfterPrintAcaoApos a conclusao da geracao do relatorio
OnNewPageAcaoNova pagina iniciada
OnGroupChangeAcaoQuebra de grupo ocorreu

TBarcode CT_BARCODE = 93

Gerador de codigos de barras suportando formatos 1D e 2D. Renderiza codigos de barras como imagens para exibicao, impressao ou exportacao.

PropriedadeTipoPadraoDescricao
cDataString""Dados para codificar
nFormatNumerico00=Code128, 1=Code39, 2=EAN13, 3=QRCode, 4=DataMatrix, 5=PDF417
nWidthNumerico200Largura de saida em pixels
nHeightNumerico80Altura de saida em pixels
lShowTextLogico.T.Exibir texto legivel abaixo do codigo de barras
nErrorLevelNumerico2Nivel de correcao de erro QR (0=L, 1=M, 2=Q, 3=H)
EventoCategoriaDescricao
OnGenerateAcaoImagem do codigo de barras gerada
OnErrorErroDados invalidos para o formato escolhido

TPDFGenerator CT_PDFGENERATOR = 94

Gerador de documentos PDF. Cria arquivos PDF multipagina com texto, imagens, tabelas, codigos de barras e graficos vetoriais.

PropriedadeTipoPadraoDescricao
cFileNameString""Caminho do arquivo PDF de saida
cTitleString""Titulo do documento (metadados)
cAuthorString""Autor do documento (metadados)
nPageWidthNumerico595Largura da pagina em pontos (A4)
nPageHeightNumerico842Altura da pagina em pontos (A4)
nMarginNumerico36Margens da pagina em pontos
lCompressedLogico.T.Habilitar compressao de stream
EventoCategoriaDescricao
OnNewPageAcaoNova pagina criada
OnCompleteAcaoGeracao do PDF concluida
OnErrorErroErro durante a geracao do PDF

TExcelExport CT_EXCELEXPORT = 95

Exportador de planilhas Excel. Gera arquivos .xlsx com formatacao, formulas e multiplas planilhas.

PropriedadeTipoPadraoDescricao
cFileNameString""Caminho do arquivo .xlsx de saida
cSheetNameString"Sheet1"Nome da planilha ativa
nSheetCountNumerico1Numero de planilhas (somente leitura)
lAutoFitLogico.T.Ajuste automatico da largura das colunas
lHeaderBoldLogico.T.Formatacao em negrito para o cabecalho
EventoCategoriaDescricao
OnExportAcaoExportacao concluida
OnProgressAcaoAtualizacao de progresso da exportacao (nRow, nTotal)
OnErrorErroErro durante a exportacao

TAuditLog CT_AUDITLOG = 96

Componente de trilha de auditoria. Registra automaticamente acoes do usuario, alteracoes de dados e eventos do sistema com carimbos de data/hora.

PropriedadeTipoPadraoDescricao
cLogTableString"audit_log"Tabela do banco de dados para armazenar logs
cUserFieldString"user_id"Nome do campo para o usuario atual
lLogReadsLogico.F.Registrar operacoes de leitura (nao apenas escrita)
lLogTimestampLogico.T.Incluir carimbo de data/hora nas entradas de log
aTrackedTablesArray{}Tabelas para monitorar alteracoes
EventoCategoriaDescricao
OnLogEntryAcaoNova entrada de auditoria registrada
OnAlertAcaoAtividade suspeita detectada

TPermissions CT_PERMISSIONS = 97

Gerenciador de controle de acesso baseado em funcoes. Define usuarios, funcoes e permissoes para recursos e dados da aplicacao.

PropriedadeTipoPadraoDescricao
cCurrentUserString""Usuario autenticado atualmente
cCurrentRoleString""Funcao do usuario atual
aRolesArray{}Funcoes definidas
hPermissionsHash{=>}Mapeamento de funcao para permissoes
cPermTableString"permissions"Tabela do banco de dados de permissoes
EventoCategoriaDescricao
OnLoginAcaoUsuario autenticado
OnDeniedAcaoPermissao negada para acao
OnRoleChangeAcaoFuncao do usuario alterada

TCurrency CT_CURRENCY = 98

Gerenciador de multiplas moedas. Gerencia taxas de cambio, conversao de moedas e formatacao local.

PropriedadeTipoPadraoDescricao
cBaseCurrencyString"USD"Codigo da moeda base (ISO 4217)
nAmountNumerico0.00Valor atual na moeda base
hRatesHash{=>}Taxas de cambio hash (codigo => taxa)
nDecimalsNumerico2Precisao decimal
lAutoUpdateLogico.F.Buscar taxas automaticamente via API online
EventoCategoriaDescricao
OnConvertAcaoConversao de moeda realizada
OnRatesUpdatedAcaoTaxas de cambio atualizadas

TTaxEngine CT_TAXENGINE = 99

Motor de calculo de impostos. Lida com IVA, imposto sobre vendas, retencao e regras fiscais de multiplas jurisdicoes.

PropriedadeTipoPadraoDescricao
nBaseAmountNumerico0.00Valor antes do imposto
nTaxRateNumerico0.00Aliquota do imposto (percentual)
nTaxAmountNumerico0.00Imposto calculado (somente leitura)
nTotalAmountNumerico0.00Valor + imposto (somente leitura)
cJurisdictionString""Codigo da jurisdicao fiscal
lInclusiveLogico.F.Preco com imposto incluso
aTaxRulesArray{}Regras fiscais personalizadas por categoria
EventoCategoriaDescricao
OnCalculateAcaoCalculo de imposto concluido
OnRuleAppliedAcaoRegra fiscal especifica correspondida e aplicada

TDashboard CT_DASHBOARD = 100

Container de painel empresarial. Hospeda widgets (graficos, KPIs, medidores, tabelas) em um layout de grade configuravel para visoes executivas.

PropriedadeTipoPadraoDescricao
nColumnsNumerico3Numero de colunas da grade
nRowsNumerico2Numero de linhas da grade
nRefreshIntervalNumerico60000Intervalo de atualizacao automatica (ms)
lAutoRefreshLogico.T.Habilitar atualizacao automatica de dados
cThemeString"dark"Tema visual (dark, light, corporate)
aWidgetsArray{}Definicoes de widgets do painel
EventoCategoriaDescricao
OnRefreshAcaoDados do painel atualizados
OnWidgetClickAcaoUsuario clicou em um widget do painel
OnDrillDownAcaoUsuario detalhou um widget

TScheduler CT_SCHEDULER = 101

Agendador de tarefas para gerenciamento de trabalhos em segundo plano. Suporta agendamento tipo cron, tarefas unicas e trabalhos recorrentes.

PropriedadeTipoPadraoDescricao
aJobsArray{}Trabalhos agendados registrados
lRunningLogico.F.Agendador esta ativo (somente leitura)
nMaxConcurrentNumerico4Numero maximo de trabalhos simultaneos
cLogFileString""Arquivo de log de execucao de trabalhos
lPersistentLogico.T.Persistir agendamento entre reinicios
EventoCategoriaDescricao
OnJobStartAcaoTrabalho agendado iniciado
OnJobCompleteAcaoTrabalho concluido com sucesso
OnJobErrorErroTrabalho falhou com erro
OnScheduleChangeAcaoAgendamento modificado

Exemplo de Codigo: Codigo de Barras + Exportacao PDF

Este exemplo demonstra a geracao de codigos de barras de produtos e exportacao para um catalogo PDF.

// Gerar codigo de barras e exportar para PDF
FUNCTION ExportarCatalogoProdutos()
   LOCAL oBarcode, oPdf, cFile, nRow

   // Criar gerador de codigo de barras
   oBarcode := TBarcode():New()
   oBarcode:nFormat := 0  // Code128
   oBarcode:nWidth  := 250
   oBarcode:nHeight := 60
   oBarcode:lShowText := .T.

   // Criar documento PDF
   oPdf := TPDFGenerator():New()
   oPdf:cFileName := "catalogo.pdf"
   oPdf:cTitle    := "Catalogo de Produtos"
   oPdf:cAuthor   := "HarbourBuilder ERP"
   oPdf:NewPage()

   // Cabecalho
   oPdf:SetFont( "Helvetica", 18, .T. )
   oPdf:DrawText( 36, 780, "Catalogo de Codigos de Barras" )
   oPdf:DrawLine( 36, 775, 559, 775 )

   // Gerar codigos de barras para cada produto
   nRow := 720
   Products->GoTop()
   DO WHILE ! Products->Eof()
      // Gerar imagem do codigo de barras
      oBarcode:cData := Products->SKU
      cFile := oBarcode:Generate()

      // Desenhar info do produto + codigo de barras no PDF
      oPdf:SetFont( "Helvetica", 12, .F. )
      oPdf:DrawText( 36, nRow, Products->Name )
      oPdf:DrawText( 36, nRow - 15, "SKU: " + Products->SKU )
      oPdf:DrawImage( 300, nRow - 50, 250, 60, cFile )

      nRow -= 90
      IF nRow < 100
         oPdf:NewPage()
         nRow := 780
      ENDIF

      Products->Skip()
   ENDDO

   oPdf:Save()
   MsgInfo( "Catalogo exportado para catalogo.pdf" )
RETURN NIL
12 Controles ERP / Negocios

Estes componentes empresariais aceleram o desenvolvimento de aplicacoes de negocios. Da geracao de codigos de barras e exportacao PDF a registro de auditoria e permissoes baseadas em funcoes, eles fornecem os blocos de construcao para sistemas ERP, contabeis e de gestao de negocios completos.

Nesta Página

TPreprocessor CT_PREPROCESSOR = 90 TScriptEngine CT_SCRIPTENGINE = 91 TReportDesigner CT_REPORTDESIGNER = 92 TBarcode CT_BARCODE = 93 TPDFGenerator CT_PDFGENERATOR = 94 TExcelExport CT_EXCELEXPORT = 95 TAuditLog CT_AUDITLOG = 96 TPermissions CT_PERMISSIONS = 97 TCurrency CT_CURRENCY = 98 TTaxEngine CT_TAXENGINE = 99 TDashboard CT_DASHBOARD = 100 TScheduler CT_SCHEDULER = 101 Exemplo de Codigo: Codigo de Barras + Exportacao PDF