mkyx Posted April 25, 2017 Report Share Posted April 25, 2017 Boa dia a todos. para colocar mais de uma linha no cabeçalho, fiz assim e deu certo: oBrw:nHeaderLines := 5 //--> Cabecalho em 5 Linhas. no cabeçalho das colunas, fiz assim e deu certo: oCol:= oBrw:AddCol() oCol:cHeader := "PIS"+CHR(13)+"8109"+CHR(13)+"DATA APURAÇÃO"+CHR(13)+"VALOR"+CHR(13)+"VENCIMENTO" Mas, na área de dados (datalines), fiz de maneira semelhante, mas não funcionou: oBrw:nDataLines := 3 // área de dados com 3 linhas na área de dados das colunas, fiz assim e não funcionou: oCol:bStrData := { || DTOC(ARQ_IMP->APURACAO)+CHR(13)+TRANSFORM(ARQ_IMP->PIS,"@E 999,999,999.99")+CHR(13)+DTOC(ARQ_IMP->VENCIMENTO) } Alguém tem alguma idéia??? Pompeo Guaratingueta SP Quote Link to comment Share on other sites More sharing options...
aferra Posted April 25, 2017 Report Share Posted April 25, 2017 oCol:bStrData := { || DTOC(ARQ_IMP->APURACAO)+CRLF+TRANSFORM(ARQ_IMP->PIS,"@E 999,999,999.99")+CRLF+DTOC(ARQ_IMP->VENCIMENTO) } Quote Link to comment Share on other sites More sharing options...
mkyx Posted April 25, 2017 Author Report Share Posted April 25, 2017 Já tinha feito como você passou, e voltei a tentar de novo, mas não separa, deixando apenas tudo numa linha. Quote Link to comment Share on other sites More sharing options...
aferra Posted April 26, 2017 Report Share Posted April 26, 2017 mostra então como está criando essa coluna o ocol inteiro da coluna, de repente tem algo Quote Link to comment Share on other sites More sharing options...
mkyx Posted April 26, 2017 Author Report Share Posted April 26, 2017 Como faço pra criar a tabela no xbrowse: SELECT ARQ_TAB1 ARQ_TAB1->(dbsetorder(1)) ARQ_TAB1->(ORDSCOPE(0,STRZERO(CODFIR,3)+STRZERO(C_ANO,4))) ARQ_TAB1->(ORDSCOPE(1,STRZERO(CODFIR,3)+STRZERO(C_ANO,4))) ARQ_TAB1->(DBGOTOP()) oBrw0_1 := TXBrowse():New( OWND ) oBrw0_1:nTop:=70 oBrw0_1:nLeft:=05 oBrw0_1:nBottom:=640 oBrw0_1:nRight:=1240 oBrw0_1:nMarqueeStyle := MARQSTYLE_HIGHLCELL oBrw0_1:nColDividerStyle := 1 oBrw0_1:nRowDividerStyle := 1 oBrw0_1:cAlias := "ARQ_TAB1" oBrw0_1:lColDividerComplete := .t. oBrw0_1:nHeaderLines := 5 //--> Cabecalho em 2 Linhas. oBrw0_1:nDataLines := 3 // Aumenta o espaco da linha oBrw0_1:lAllowColSwapping :=.T. // Trocar Colunas oBrw0_1:lAllowRowSizing := .T. //--> Nao move as Linhas oBrw0_1:nRowHeight := 30 //--> Altura das Linhas do ListBox. oBrw0_1:lHScroll := .T. oBrw0_1:lVScroll := .T. oBrw0_1:lHeader := .T. oBrw0_1:lFooter := .F. oBrw0_1:nFreeze := 1 oBrw0_1:lRecordSelector := .T. oBrw0_1:l2007:=.T. oBrw0_1:bClrStd := {||iif(ARQ_TAB1->NOMEMES="SOMA ANUAL",{CLR_BLACK,nRGB(56,176,222)},IIF("TRIMESTRE"$ARQ_TAB1->NOMEMES,{CLR_BLACK,nRGB(254,187,137)},{CLR_BLUE,nRGB(255,255,255)}))} oBrw0_1:lFooter := .F. oBrw0_1:oFont := OFONT oCol:= oBrw0_1:AddCol() oCol:bStrData := { || ARQ_TAB1->NOMEMES} oCol:cHeader := "MÊS" oCol:oDataFont := OFONT oCol:nHeadStrAlign := AL_CENTER oCol:oHeaderFont := OFNT1 oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->VENDAS>0,TRANSFORM(ARQ_TAB1->VENDAS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "VENDAS" oCol:oHeaderFont := OFNT1 oCol:oDataFont := OFONT oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->VENDAS } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->VENDAS),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->FATURA>0,TRANSFORM(ARQ_TAB1->FATURA,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "SERVIÇOS" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->FATURA } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->FATURA),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->GANHOS>0,TRANSFORM(ARQ_TAB1->GANHOS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "GANHOS CAP" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->GANHOS } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->GANHOS),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->RENDIMENTO>0,TRANSFORM(ARQ_TAB1->RENDIMENTO,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "REND APLIC" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->RENDIMENTO } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->RENDIMENTO),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() // a linha abaixo não funciona, colocar tudo na mesma linha oCol:bStrData := {||if(arq_tab1->pis>0,DTOC(ARQ_TAB1->APURACAO)+CRLF+TRANSFORM(ARQ_TAB1->PIS,"@E 999,999,999.99"),space(10))} // já o cabeçalho abaixo, funciona oCol:cHeader := "PIS"+CRLF+"8109"+CRLF+"DATA APURAÇÃO"+CRLF+"VALOR"+CRLF+"VENCIMENTO" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->COFINS>0,TRANSFORM(ARQ_TAB1->COFINS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "COFINS" oCol:oHeaderFont := OFNT1 oCol:oDataFont := OFONT oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->CSOCIAL>0,TRANSFORM(ARQ_TAB1->CSOCIAL,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "CSLL" oCol:oHeaderFont := OFNT1 oCol:oDataFont := OFONT oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->IRPJ>0,TRANSFORM(ARQ_TAB1->IRPJ,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "IRPJ" oCol:oHeaderFont := OFNT1 oCol:oDataFont := OFONT oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->ADICIONAL>0,TRANSFORM(ARQ_TAB1->ADICIONAL,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "ADICIONAL" oCol:oHeaderFont := OFNT1 oCol:oDataFont := OFONT oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->SERVICOS>0,TRANSFORM(ARQ_TAB1->SERVICOS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "SERVIÇOS T" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->SERVICOS } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->SERVICOS),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->VALOR_ISS>0,TRANSFORM(ARQ_TAB1->VALOR_ISS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "ISS" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->VALOR_ISS } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->VALOR_ISS),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oCol:= oBrw0_1:AddCol() oCol:bStrData := { || IIF(ARQ_TAB1->VALOR_INSS>0,TRANSFORM(ARQ_TAB1->VALOR_INSS,"@E 999,999,999.99"),SPACE(10)) } oCol:cHeader := "INSS" oCol:oDataFont := OFONT oCol:oHeaderFont := OFNT1 oCol:cEditPicture := "@E 999,999,999.99" oCol:bEditvalue := { || ARQ_TAB1->VALOR_INSS } oCol:nEditType := iif(left(arq_tab1->tipo,1)#"T",EDIT_GET,EDIT_NONE) oCol:bOnPostEdit := { | oCol, uVal, nKey | iif(left(arq_tab1->tipo,1)#"T",(ARQ_TAB1->(dbrlock()),(QT_Ant:=ARQ_TAB1->VALOR_INSS),ARQ_TAB1->( FieldPut(oCol:nCreationOrder, uVal)),ARQ_TAB1->(dbcommit()),ARQ_TAB1->(dbunlock()),oBrw0_1:refresh(),tecla(NKEY,ARQ_TAB1->(recno()))),) } oCol:nHeadStrAlign := AL_CENTER oBrw0_1:bKeydown:={|nkey|_obrww_(oBrw0_1:ColAtPos(oBrw0_1:nColsel):nCreationOrder,nkey,ARQ_TAB1->(RECNO()))} oBrw0_1:SetRDD() oBrw0_1:CreateFromCode() O problema é que a exibição do cabeçalho, funciona, dividindo em 5 linhas, mas a parte dos registros, dos dados, não divide em 3 linhas, como está no comando acima. Onde será que estou pecando? Quote Link to comment Share on other sites More sharing options...
evertonlb Posted April 27, 2017 Report Share Posted April 27, 2017 Será que foi definido o CRLF #define CRLF Chr(13)+Chr(10) Att. Quote Link to comment Share on other sites More sharing options...
sistem Posted April 27, 2017 Report Share Posted April 27, 2017 Ola se nao é o que o Everton disse. vc poderia tentar assim: @ 1.3,0 XBROWSE oLbxClie FIELDS Clie->Cod_Clie,; Clie->Nom_Clie+CRLF+Clie->Fan_Clie,; Clie->Tel_Clie+CRLF+Clie->Cel_Clie,; nil,; Alltrim(Clie->End_Clie)+" "+Alltrim(Clie->Nmr_Clie)+" "+Alltrim(Clie->Cmp_Clie)+CRLF+Clie->Bai_clie,; Clie->Cid_Clie+CRLF+Clie->Est_Clie+" - "+Clie->Cep_Clie,; Clie->Cgc_Clie+CRLF+Clie->Ins_Clie,; Clie->Cpf_Clie+CRLF+Clie->Ide_Clie,; Clie->Con_Clie+CRLF+Clie->Ven_Clie+"-"+Vend->Ape_Vend,; Rota->Cod_Rota+"-"+Left(Rota->Nom_Rota,15)+CRLF+Tipo->Cod_Tipo+"-"+Left(Tipo->Nom_Tipo,15),; Clie->Usu_Clie+CRLF+Clie->Tim_Clie; HEADERS "Cód.",; "Razão Social/Nome Cliente"+CRLF+"Nome Fantasia",; "Telefone"+CRLF+"Celular",; "Data de Cadastro"+CRLF+"Situação",; "Endereço" +CRLF+ "Bairro",; "Município"+CRLF+"UF/CEP",; "CNPJ"+CRLF+"Ins.Estadual",; "CPF"+CRLF+"RG",; "Contato"+CRLF+"Representante",; "Rota"+CRLF+"Tipo Estabelecimento",; "Usuário", "Data/Hora"; JUSTIFY .f., .f., .f., .f., .f., .f., .f., .f., .f., .f., .f. ; FONT oFont ALIAS "CLIE" OF oWndClie AUTOSORT LINES CELL oLbxClie:nMarqueeStyle := MARQSTYLE_HIGHLROW oLbxClie:nColDividerStyle := LINESTYLE_BLACK oLbxClie:nRowDividerStyle := LINESTYLE_BLACK oLbxClie:lColDividerComplete := .t. oLbxClie:lFooter := .t. oLbxClie:nFreeze := 3 oLbxClie:nHeaderLines := 2 oLbxClie:nDataLines := 2 oLbxClie:bLDblClick := {|| EditClie(oLbxClie, .f.)} oLbxClie:bClrSelFocus := {|| { CLR_BLACK, CLR_FOCO }} oLbxClie:bClrStd := {|| { CLR_WHITE, If((Clie->(ORDKEYNO()))%2==0, CLR_BRW1, CLR_BRW2) } } oLbxClie:bKeyDown := {|nKey| BrwKeyClie(nkey, oLbxClie, oWndClie, oPesqComboClie)} oLbxClie:bRClicked := { | nRow, nCol | BrwPopClie(nRow, nCol, oWndClie, oLbxClie ) } oLbxClie:lIncrFilter := .t. oLbxClie:lSeekWild := .t. oLbxClie:SetGroupHeader( "CADASTRO DE CLIENTES", 1, 3, oFont4 ) oCol := oLbxClie:aCols[ 1 ] oCol:cSortOrder := 'CLIE1' ocol:cToolTip:="Clique para ordenar por código" oCol:bClrStd := {|| { CLR_WHITE, If(Clie->Ati_Clie, CLR_GRAY, CLR_BRW2 ) } } oCol:AddResource("BMP_SETA") oCol:bStrData := { || Clie->Cod_Clie } oCol:bBmpData := { || If(!Clie->Mar_Clie, nil, 1) } oCol := oLbxClie:aCols[ 2 ] oCol:cSortOrder := 'CLIE2' ocol:cToolTip:="Clique para ordenar por nome" oCol:bClrStd := {|| { CLR_WHITE, If(Clie->Ati_Clie, CLR_GRAY, CLR_BRW2 ) } } // oCol:oDataFont := If(Clie->Ati_Clie, oFont1, oFont) oCol := oLbxClie:aCols[ 3 ] oCol:bClrStd := {|| { CLR_WHITE, If(Clie->Ati_Clie, CLR_GRAY, CLR_BRW2 ) } } oCol := oLbxClie:aCols[ 4 ] oCol:AddResource("BMP_CHE1") oCol:AddResource("BMP_CHE2") oCol:bStrData := { || Dtoc(Clie->Dat_Clie)+CRLF+If(Clie->Ati_Clie, "BLOQUEADO", "") } oCol:bBmpData := { || If(Clie->Ati_Clie, 2, 1) } oCol:bClrStd := {|| { CLR_WHITE, If(Clie->Ati_Clie, CLR_GRAY, CLR_BRW1 ) } } uso dessa maneira acima obs: seu codigo deveria trabalhar bem, nao vi nenhum problema Quote Link to comment Share on other sites More sharing options...
Edu Posted June 19, 2017 Report Share Posted June 19, 2017 http://forums.fivetechsupport.com/viewtopic.php?f=3&t=27136&hilit=bPaintText http://forums.fivetechsupport.com/viewtopic.php?f=3&t=22506&p=119910&hilit=bpainttext#p119910 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.