× Linguagem de Programação ADVPL

Perguntas Alinhamento Celulas TREPORT

Mais
10 anos 3 meses atrás #24249 por manoelcarlosjunior
Bom dia Galera no TREPORT tem como alinhar a célula uma abaixo da outra ?

Se puderem me ajudar !!!!

Abraço a todos !!!

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24356 por will3698
Respondido por will3698 no tópico Alinhamento Celulas TREPORT
Ola , boa noite

Realmente no TREPORT eu nunca vi esse tipo de coisa.. Mas talvez entendi errado
tem como exemplificar graficamente mais ou menos oque precisa ?

att

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás - 10 anos 3 meses atrás #24360 por manoelcarlosjunior




Caro willian barreto araujo, Só pelo interesse ja agradeço segue em a nexo a representação do que pretendo fazer se tiver como no treport.

Abraço



Manoel Carlos Júnior
tecnico.trend
Anexos:
Ultima edição: 10 anos 3 meses atrás por manoelcarlosjunior.

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24363 por kanaamlrr
Respondido por kanaamlrr no tópico Alinhamento Celulas TREPORT
Manoel, é possível fazer isso se você utilizar a impressão via comando "Say", porém todo o controle de paginação e posicionamento dos campos devem ser feitos por você.

Segue a sintaxe do comando:

Say ( < nRow>, < nCol>, < cText>, [ oFont], [ nWidth], [ nClrText], [ nBkMode] )

nRow Linha onde será impresso
nCol Coluna onde será impresso
cText Texto que será impresso
oFont Objeto da classe TFont para casos de formatação <opcional>
nWidth Largura do texto <opcional>
nClrText Cor da fonte <opcional>
nBkMode numerico Cor de fundo <opcional>

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24364 por manoelcarlosjunior
Então professor Kanaãm Luz Romero Rodrigues como seria ?
Eu uso o comando New Ex.:

TRCell():New(oSection1,"C9_FILIAL","SC9","Filial",,,,,,,,,,,,,,,.F.)

New(oParent,cName,cAlias,cTitle,cPicture,nSize,lPixel,bBlock,cAlign,lLineBreak,cHeaderAlign,lCellBreak,nColSpace,lAutoSize,nClrBack,nClrFore,lBold)

oParent Objeto da classe TRSection que a célula pertence
cName Nome da célula
cAlias Tabela utilizada pela célula
cTitle Título da célula
cPicture Máscara da célula
nSize Tamanho da célula
lPixel Aponta se o tamanho foi informado em pixel
bBlock Bloco de código com o retorno do campo
cAlign Alinhamento da célula. “LEFT”, “RIGHT” e “CENTER”
lLineBreak Quebra linha se o conteúdo estourar o tamanho do campo
cHeaderAlign Alinhamento do cabeçalho da célula. “LEFT”, “RIGHT” e “CENTER”
lCellBreak Compatibilidade – Não utilizado
nColSpace Espaçamento entre as células
lAutoSize Ajusta o tamanho da célula com base no tamanho da página e as Informações impressas
nClrBack Cor de fundo da célula
nClrFore Cor da fonte da célula
lBold Imprime a fonte em negrito


No Say ficaria.:

Say ( 1, "C9_FILIAL","FILIAL',,,,) ? Vou fazer testes desde já agradeço !!!

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24371 por kanaamlrr
Respondido por kanaamlrr no tópico Alinhamento Celulas TREPORT
Então cara, nesse caso, você não utilizar objetos de seção.
Você tem que imprimir coluna a coluna, campo a campo.

Segue um exemplo simples:
oPrint:= TMSPrinter():New( "TESTE" )
oPrint:SetPortrait() // ou SetLandscape()
oPrint:StartPage()   // Inicia uma nova página

oPrint:Say  (0120,150,"Pagina:"+transform(_npg,"999"), oFont24)   
oPrint:Say  (0120,600,"<empresa>",oFont24 )   
oPrint:Say  (0200,600,"<endereço",oFont13 ) 
oPrint:Say  (0250,600,"<telefone>",oFont13 )


FOR x = 1 TO LEN(aLista)

    oPrint:box  (_nlin,0100,_nlinc,0150)
	oPrint:Say  (_nlin,0230, aLista[x,2],oFont13)                                           
	oPrint:Say  (_nlin,0380, transform(aLista[x,3],"@E 9999,999"),oFont13)                                           
	oPrint:Say  (_nlin,0800, substr(aLista[x,4],1,31),oFont13) 
    oPrint:Say  (_nlin,1850, transform(aLista[x,5],"@E 9999,999.999"),oFont13)                                                

   
    if _nlin > 3000 
         
       
       	oPrint:Line (3200, 100,3200,2280)
   		oPrint:Say (3300, 100," Proxima pagina...")  
   		_npg := _npg + 1 
       	
         
        oPrint:StartPage()   // Inicia uma nova página admo
              	
        _nlin  := 1020  
        _nlinc := 1080  
        
     	oPrint:EndPage()     // Finaliza a página   
        oPrint:Line (0400, 100,0400,2280)   
        cab_pick1()  	
    else
   	    _nlin +=60                    
     	_nlinc +=60
    endif 
next
oPrint:Line (_nlin + 100, 100,_nlin + 100,2280)
oPrint:Say  (_nlin + 100,1400, "Peso Total => ",oFont13n)                                           
oPrint:Say  (_nlin + 100,1850, transform(round(_nTotal,3),"@E 9999,999.999"),oFont13n)                                           
oPrint:Line (_nlin + 200, 100,_nlin + 200,2280)
oPrint:Say  (_nlin + 300, 100, sc5->c5_msgped,oFont13n)                                           

oPrint:EndPage()     // Finaliza a página


oPrint:Preview() 

Esse é apenas um exemplo básico.
Seria legal entender como ele funciona e montar da forma que você precisa.
As variáveis aLista e demais contém as informações a serem impressas.

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.170 segundos
Joomla templates by a4joomla