Quem tiver interesse em fazer o Curso de Desenvolvedor Progress Datasul + DDK + UPC entre na pagina de nossos cursos.
www.cursodeprogress.com.br
Abraços,
Alexandre.
Alexandre Amorim - Openedge Progress 4gl - Datasul
Blog dedicado a linguagem Openedge Progress 4gl e o ERP Datasul EMS da Totvs. Dicas, tutoriais, templates, exemplos de programas, treinamentos vip, curso de Progress
quinta-feira, 29 de agosto de 2019
terça-feira, 16 de janeiro de 2018
Datasul e Progress - Curso de Progress - Curso Progress - Formação Progress
Datasul e Progress - Curso de Progress - Curso Progress - Formação Progress
Treinamento Customizado focado na necessidade do cliente.
Os treinamentos customizados com foco na necessidade do cliente e procura atender as expectativas dos alunos de maneira rápida e eficiente, sem a necessidade de grandes teorias e praticas desnecessárias no dia a dia, utilizando programas de exemplo como base tona o treinamento mais interessante e proporciona ao aluno a possibilidade de deixar o treinamento já utilizando os recursos adquiridos.
Treinamento Totalmente Pratico.
O Aluno trabalha diretamente em exemplos e modelos de programas reais, não perdendo tempo e ficando com bagagem cheia de teoria e pouca pratica no assunto abordado.
Informaçoes e Contato:
quarta-feira, 14 de dezembro de 2011
CURSO DE PROGRESS
Bem-vindos à ALX - Consultoria e Treinamentos
Cursos Progress - Formação Progress
Treinamento Customizado focado na necessidade do cliente.
Os treinamentos customizados com foco na necessidade do cliente e procura atender as expectativas dos alunos de maneira rápida e eficiente, sem a necessidade de grandes teorias e praticas desnecessárias no dia a dia, utilizando programas de exemplo como base tona o treinamento mais interessante e proporciona ao aluno a possibilidade de deixar o treinamento já utilizando os recursos adquiridos.
Treinamento Totalmente Pratico.
O Aluno trabalha diretamente em exemplos e modelos de programas reais, não perdendo tempo e ficando com bagagem cheia de teoria e pouca pratica no assunto abordado.
Entre em contato: contato@cursodeprogress.com.br
Skype: alx_amorim@hotmail.com
Leia mais: http://cursodeprogress.webnode.com.br/
sexta-feira, 9 de dezembro de 2011
Relatório em Excel com Progress - Usando varios Recursos simples
Abaixo demonstro um exemplo de relatório em progress que gera arquivo em excel todo comentado, vejam que utilizo varios recursos interessantes como titulo, numero de pagina e outras dicas de formatação.....
/* Cria as variaveis necessárias para o relatório */DEF VAR chExcelApplication AS COM-HANDLE NO-UNDO.
DEF VAR chWorkbook AS COM-HANDLE NO-UNDO.
DEF var chworksheet AS com-handle.
DEF VAR m-linha AS INTEGER NO-UNDO. /* Variável p/ contagem das linhas */
ASSIGN m-linha = 1.
CREATE "Excel.Application" chExcelApplication. /* Cria a Planilha */
ASSIGN chWorkbook = chExcelApplication:Workbooks:ADD("")
chworksheet=chexcelapplicAtion:sheets:item(1)
chworksheet:name="Pasta do Relatório". /* Nome que será criada a Pasta da Planilha */
m-linha = 2.
ASSIGN chWorkSheet:PageSetup:Orientation = 1. /* Define papel como formato Retrato */
ASSIGN chworksheet:range("A1:C1"):FONT:colorindex = 02 /* Aplica fonte cor Branca no Titulo */
chworksheet:range("A1:C1"):MergeCells = TRUE. /* Cria a Planilha */
chworksheet:range("A1:C1"):VALUE = "Titulo - Titulo do Relatório".
chWorkSheet:Range("A1:C1"):HorizontalAlignment = 3. /* Centraliza o Titulo */
chWorkSheet:Range("A1:C1"):Interior:colorindex = 01. /* Aplica fundo preto no titulo */
/* Cria os titulos para as colunas do relatório */
ASSIGN chworksheet:range("A2:C2"):font:bold = TRUE /* Aplica negrito na linha de titulo das colunas */
chworksheet:range("A" + STRING(m-linha)):VALUE = "TituloColuna A"
chworksheet:range("B" + STRING(m-linha)):VALUE = "TituloColuna B"
chworksheet:range("C" + STRING(m-linha)):VALUE = "TituloColuna C"
m-linha = m-linha + 1.
/* Faça o for each desejado */ FOR EACH tabela NO-LOCK:
/* Lista os dados da tabela nas colunas */
ASSIGN chworksheet:range("A" + STRING(m-linha)):VALUE = tabela.campo1
chworksheet:range("B" + STRING(m-linha)):VALUE = tabela.campo2
chworksheet:range("C" + STRING(m-linha)):VALUE = tabela.campo3.
ASSIGN m-linha = m-linha + 1.
END.
ASSIGN
chExcelApplication:Range("B1:B65000"):NumberFormat = "dd/mm/aaaa" /* Formato de data na col B */
chExcelApplication:Range("C1:C65000"):NumberFormat = "#.##0,00". /* formato numerico c/2 dec na col C */
chWorkSheet:PageSetup:RightFooter = "&d/&t" + "-PAGINA:" + "&P/&N". /* Data/Hora e Nr Pg no Rodapé */
chworksheet:range("B2:C2"):EntireColumn:AutoFit. /* Define automaticamente a largura das colunas */
chExcelApplication:COLUMNS("A:A"):ColumnWidth = 25.00. /* Define manualmente a largura da coluna A */
chExcelApplication:Rows("1:65000"):RowHeight = 17.00. /* Tamanho da linha */
chWorkSheet:PageSetup:PrintTitleRows = "$1:$1". /* Adiciona o Titulo em todas as paginas de Impressao */
chWorkSheet:PageSetup:Zoom = 80. /* Aplica 80% para ajuste na impressao da pagina */
chExcelApplication:Range("A1"):select.
chExcelApplication:Visible = yes.
RELEASE OBJECT chExcelApplication.
RELEASE OBJECT chWorkbook.
/* Cria as variaveis necessárias para o relatório */DEF VAR chExcelApplication AS COM-HANDLE NO-UNDO.
DEF VAR chWorkbook AS COM-HANDLE NO-UNDO.
DEF var chworksheet AS com-handle.
DEF VAR m-linha AS INTEGER NO-UNDO. /* Variável p/ contagem das linhas */
ASSIGN m-linha = 1.
CREATE "Excel.Application" chExcelApplication. /* Cria a Planilha */
ASSIGN chWorkbook = chExcelApplication:Workbooks:ADD("")
chworksheet=chexcelapplicAtion:sheets:item(1)
chworksheet:name="Pasta do Relatório". /* Nome que será criada a Pasta da Planilha */
m-linha = 2.
ASSIGN chWorkSheet:PageSetup:Orientation = 1. /* Define papel como formato Retrato */
ASSIGN chworksheet:range("A1:C1"):FONT:colorindex = 02 /* Aplica fonte cor Branca no Titulo */
chworksheet:range("A1:C1"):MergeCells = TRUE. /* Cria a Planilha */
chworksheet:range("A1:C1"):VALUE = "Titulo - Titulo do Relatório".
chWorkSheet:Range("A1:C1"):HorizontalAlignment = 3. /* Centraliza o Titulo */
chWorkSheet:Range("A1:C1"):Interior:colorindex = 01. /* Aplica fundo preto no titulo */
/* Cria os titulos para as colunas do relatório */
ASSIGN chworksheet:range("A2:C2"):font:bold = TRUE /* Aplica negrito na linha de titulo das colunas */
chworksheet:range("A" + STRING(m-linha)):VALUE = "TituloColuna A"
chworksheet:range("B" + STRING(m-linha)):VALUE = "TituloColuna B"
chworksheet:range("C" + STRING(m-linha)):VALUE = "TituloColuna C"
m-linha = m-linha + 1.
/* Faça o for each desejado */ FOR EACH tabela NO-LOCK:
/* Lista os dados da tabela nas colunas */
ASSIGN chworksheet:range("A" + STRING(m-linha)):VALUE = tabela.campo1
chworksheet:range("B" + STRING(m-linha)):VALUE = tabela.campo2
chworksheet:range("C" + STRING(m-linha)):VALUE = tabela.campo3.
ASSIGN m-linha = m-linha + 1.
END.
ASSIGN
chExcelApplication:Range("B1:B65000"):NumberFormat = "dd/mm/aaaa" /* Formato de data na col B */
chExcelApplication:Range("C1:C65000"):NumberFormat = "#.##0,00". /* formato numerico c/2 dec na col C */
chWorkSheet:PageSetup:RightFooter = "&d/&t" + "-PAGINA:" + "&P/&N". /* Data/Hora e Nr Pg no Rodapé */
chworksheet:range("B2:C2"):EntireColumn:AutoFit. /* Define automaticamente a largura das colunas */
chExcelApplication:COLUMNS("A:A"):ColumnWidth = 25.00. /* Define manualmente a largura da coluna A */
chExcelApplication:Rows("1:65000"):RowHeight = 17.00. /* Tamanho da linha */
chWorkSheet:PageSetup:PrintTitleRows = "$1:$1". /* Adiciona o Titulo em todas as paginas de Impressao */
chWorkSheet:PageSetup:Zoom = 80. /* Aplica 80% para ajuste na impressao da pagina */
chExcelApplication:Range("A1"):select.
chExcelApplication:Visible = yes.
RELEASE OBJECT chExcelApplication.
RELEASE OBJECT chWorkbook.
sexta-feira, 26 de agosto de 2011
Material para começar a estudar progress Apostila, Tutorial Completo
Olá galera, esta é a apostila mais divulgada na net sobre progress, bastante completa, legal para ter quando se está iniciando na linguagem, foi escrita por Marcio Brener Costa... segue abaixo o link para baixarem a vontade...
http://files.cursodeprogress.webnode.com.br/200000011-d98b3da858/dominando_progress.pdf
http://files.cursodeprogress.webnode.com.br/200000011-d98b3da858/dominando_progress.pdf
Marcadores:
curso de progess,
cursos,
ems,
for each,
openedge,
progress,
treinamento,
treinamento de progress
Fonte para gerar codigos de barras do tipo EAN 13
Segue um link para donwload de uma fonte para gerar codigos de barras do tipo EAN13, é possivel concilia-la com uma funçao para gerar os codigos a partir de um programa progress, se alguem precisar tenho alguns programas de exemplo basta solicitar pelos comentários....
http://files.cursodeprogress.webnode.com.br/200000010-815fb8259a/EAN13.ttf
http://files.cursodeprogress.webnode.com.br/200000010-815fb8259a/EAN13.ttf
sexta-feira, 29 de julho de 2011
Progress - Usando Zoom (para pesquisas) em programas para Datasul EMS
Podemos usar um zoom de forma simples em nossos programas desenvolvidos para datasul ems.... segue um exemplo basico....
def var hprogramzoom as handle no-undo.
DEFINE VARIABLE wh-pesquisa AS HANDLE NO-UNDO.
DEFINE VARIABLE l-implanta AS LOGICAL NO-UNDO.
DEFINE NEW GLOBAL SHARED VARIABLE wh-window AS HANDLE NO-UNDO.
DEFINE NEW GLOBAL SHARED VARIABLE adm-broker-hdl AS HANDLE NO-UNDO.
DEF VAR l-implanta AS LOGICAL.
assign l-implanta = NO.
{include/zoomvar.i &prog-zoom=inzoom/z02in172.w
&campo=f-item-ini
&campozoom=it-codigo
&frame={&frame-name}}
def var hprogramzoom as handle no-undo.
DEFINE VARIABLE wh-pesquisa AS HANDLE NO-UNDO.
DEFINE VARIABLE l-implanta AS LOGICAL NO-UNDO.
DEFINE NEW GLOBAL SHARED VARIABLE wh-window AS HANDLE NO-UNDO.
DEFINE NEW GLOBAL SHARED VARIABLE adm-broker-hdl AS HANDLE NO-UNDO.
DEF VAR l-implanta AS LOGICAL.
assign l-implanta = NO.
{include/zoomvar.i &prog-zoom=inzoom/z02in172.w
&campo=f-item-ini
&campozoom=it-codigo
&frame={&frame-name}}
Assinar:
Postagens (Atom)