Olá pessoal,sou nova no clipper e quero uma ajuda sobre o xbrowse
Estou usando o xbrowse e preciso retornar o conteúdo da linha para passar por paramentro para outra classe
como posso fazer isso??
Xbrowse
Moderador: Moderadores
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Xbrowse
Olá, veja se ajuda:
http://fivewin.com.br/index.php?/topic/ ... m-xbrowse/
http://www.fivetechsoft.com/wiki/doku.p ... 1275940696
abs.
http://fivewin.com.br/index.php?/topic/ ... m-xbrowse/
http://www.fivetechsoft.com/wiki/doku.p ... 1275940696
abs.
Editado pela última vez por Toledo em 30 Out 2014 20:16, em um total de 1 vez.
Razão: Mensagem foi editada para juntar mensagem postada posteriormente que tinha apenas um link. Por favor, evite postar mensagens apenas com link, sem conteúdo.
Razão: Mensagem foi editada para juntar mensagem postada posteriormente que tinha apenas um link. Por favor, evite postar mensagens apenas com link, sem conteúdo.
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Xbrowse
Atendendo Reclamação do Administrador, estou postando o código em vez do Link.
abs.
Código: Selecionar todos
********************************************************************************************
FUNCTION xPlanilha(xDbf,xTit,xFld) // Planilha usando o xBrowse -> PARAM=(oDbf,cTít,aCampos)
********************************************************************************************
#include "XBrowse.Ch"
Local oDlg, oBrw, oReg, oFld, i
Local aFld := {}
if Select(xDbf)=0
Return nil
endif
Select(xDbf)
(xDbf)->(DbGoTop())
Default xTit := "Planilha: "+Alias()
Default xFld := {}
DEFINE DIALOG oDlg SIZE 800,420 FONT WndMain():oFont TITLE xTit TRANSPARENT
if Empty(xFld) // Mostra Todos os campos do DBF
@ 10,10 XBROWSE oBrw OF oDlg SIZE 380,180 PIXEL AUTOCOLS FOOTERS LINES CELL ALIAS (xDbf)
AEval(oBrw:aCols, {|o| o:cToolTip := {'Coluna:' + CRLF + o:cHeader, 'Informação'}}) // ToolTip nas colunas automático
else // Mostra Campos específicos do DBF
@ 10,10 XBROWSE oBrw OF oDlg SIZE 380,180 PIXEL AUTOCOLS FOOTERS LINES CELL
For i=1 To Len(xFld)
oFld := xDbf+"->"+xFld[i][1]
ADD TO oBrw DATA &oFld HEADER xFld[i][1]
Next
i:=0
AEval(oBrw:aCols, {|o| (i++, o:cToolTip:={'Coluna:'+CRLF+ iif(Empty(xFld[i][2]),xFld[i][1],xFld[i][2]) ,'Informação'}) }) // ToolTip nas colunas passado no parâmetro
endif
oBrw:lAutoSort := Empty((xDbf)->(OrdScope())) // Se o DBF está com OrdScope, então não permitir a mudança na classificação para não perder o filtro
oBrw:bClrStd := {|| {CLR_BLACK, iif(oBrw:Keyno()%2=0, CLR_WHITE, CLR_HGRAY) } } // Cores nas linhas (Par/Impar) ou (oBrw:cAlias)->(RecN())%2=0
// oBrw:DelCol( 1 ) // Deleta Coluna
// oBrw:DT_EMISS:cEditPicture := 'dd/mm/yyyy' // Máscara da Coluna
// oBrw:aCols[1]:bLClickHeader := {|| (xDbf)->(DBSETORDER(1)), oBrw:GoTop(), oBrw:Refresh()} // Para ordenar a planilha pela coluna, quando selecionada.
oBrw:CreateFromCode()
@ 195, 010 BUTTON "&Imprimir" SIZE 50,10 FONT oFontGet PIXEL ACTION oBrw:Report() // IIF( MsgYesNo("Deseja imprimir essa planilha?","Confirme"), (oReg:=(xDbf)->(RecN()),Listar(xTit,,,,,,,,,,,,,.T.,.F.),(xDbf)->(DbGoTo(oReg)),oBrw:Refresh()), )
@ 195, 070 BUTTON "&Excel" SIZE 50,10 FONT oFontGet PIXEL ACTION oBrw:ToExcel()
// @ 195, 130 BUTTON "&Pesquisa" SIZE 50,10 FONT oFontGet PIXEL ACTION (Pesquisa(xDbf,,oDlg,OrdNumber(),"Informe o que deseja encontrar:",xDbf,.f.,.t.),oBrw:Refresh()) // ( cSeek:=Space(50), iif(oaMsgGet("Buscar por","Informe o que deseja encontrar:",@cSeek,"LUPA"),oBrw:RDDIncrFilter(Upper(Alltrim(cSeek))),) )
@ 195, 190 BUTTON "&Fechar" SIZE 50,10 FONT oFontGet PIXEL ACTION oDlg:End()
ACTIVATE DIALOG oDlg CENTERED ON INIT oBrw:SetFocus()
Return Nil
- Daiane
- Usuário Nível 3

- Mensagens: 122
- Registrado em: 28 Out 2014 16:19
- Localização: Feira de Santana - BA
Xbrowse
Olá Pessoa,estou com um probleminha com o xbrowser
o que acontece é que eu tenho um xbrowser dentro de outro,ou seja eu abro a tela do xbrowser que contem o botão inbcluir e nesse botão abre uma outra janela que tem um botão de pesquisa que abre outra janela de xbrowser.
o meu problema é que quando saio da ultima janela xbrowser os dados da primeira somem,no banco eles continuam armazenadas mas visualmente no xbwoser elas somem.
Primeiro xbrowser:
Segundo xbrowser:
o que acontece é que eu tenho um xbrowser dentro de outro,ou seja eu abro a tela do xbrowser que contem o botão inbcluir e nesse botão abre uma outra janela que tem um botão de pesquisa que abre outra janela de xbrowser.
o meu problema é que quando saio da ultima janela xbrowser os dados da primeira somem,no banco eles continuam armazenadas mas visualmente no xbwoser elas somem.
Primeiro xbrowser:
Código: Selecionar todos
METHOD GenerateXBrowse() CLASS JsQuadra
::bancos:abrir(4)
SELE 4
GO TOP
REDEFINE XBROWSE ::xbrowBusca ID 4001 OF ::oChild ;
FIELDS CODCOND, CODQUAD, DESC, NOMERUA;
HEADERS "Codigo Condominio ", "Codigo Quadra ", "Descrição ","Rua ";
ON DBLCLICK ::Entregar()
//REDEFINE COMBOBOX ::gIndice VAR ::indice ID 4005 ITEMS {"", ""} VALID ::refreshIndex() OF ::oChild
::oCadastro := CadQuadras():New2(::oChild,::xbrowBusca)
RETURN
Código: Selecionar todos
METHOD GenerateXBrowser() CLASS CadQuadras
LOCAL altura:=::oChild:nHeight-100
::bancos:abrir(4)
SELE 4
GO TOP
@ 10,10 XBROWSE ::xbrowBusca;
FIELDS CODCOND, CODQUAD, DESC, NOMERUA;
HEADERS "Codigo Condominio ", "Codigo Quadra ", "Descrição ","Rua ";
OF ::oChild SIZE -10,altura PIXEL;
ON DBLCLICK ::IncOuAlt(.F.)
return
REDEFINE BUTTONBMP ::bCODCondon ID 4014 OF ::oDlg;
BITMAP "#7002" ACTION (JsCondon2(::oDlg,::gCodCondom), ::gCodQuadra:setFocus()) Valid ::VALIDDESC()XHb 1.2.1 + FW 12.05 + Pelles C IDE
"Eu adoraria mudar o mundo, mas não me deram o código-fonte."
"Eu adoraria mudar o mundo, mas não me deram o código-fonte."
-
Euclides
- Usuário Nível 3

- Mensagens: 154
- Registrado em: 12 Mai 2007 14:07
- Localização: São Paulo, Capital
Xbrowse
Oi Diane,
Não sei se entendi direito, mas abrindo o mesmo DBF com dois 'browsers', um 'browser' vai acabar 'desposicionando' o outro.
Eu resolvo isso, abrindo a mesmo DBF com alias diferentes (um para cada 'browser').
Para os dados incluídos aparecerem no 'browser', é só fazer um oLbx:refresh() ou em caso de poucos itens, um oLbx:gotop()
Acho que é isso.
T+
Euclides
Não sei se entendi direito, mas abrindo o mesmo DBF com dois 'browsers', um 'browser' vai acabar 'desposicionando' o outro.
Eu resolvo isso, abrindo a mesmo DBF com alias diferentes (um para cada 'browser').
Para os dados incluídos aparecerem no 'browser', é só fazer um oLbx:refresh() ou em caso de poucos itens, um oLbx:gotop()
Acho que é isso.
T+
Euclides