zekasan Posted April 1, 2010 Report Share Posted April 1, 2010 Preciso desta rotina, tentei puxar do site, mas está indisponÃvel, alguém poderia mandar esta rotina para o meu email, por favor? cpdsp@transwells.com.br FWH 8.05 - xHarbour - xDev - VLib Quote Link to comment Share on other sites More sharing options...
zekasan Posted April 1, 2010 Author Report Share Posted April 1, 2010 Preciso desta rotina, tentei puxar do site, mas está indisponÃvel, alguém poderia mandar esta rotina para o meu email, por favor? cpdsp@transwells.com.br FWH 8.05 - xHarbour - xDev - VLib Quote Link to comment Share on other sites More sharing options...
Theotokos Posted April 1, 2010 Report Share Posted April 1, 2010 eu faço assim, tem funcionado: DEFINE DIALOG oDlg RESOURCE "DLG_CON_MER" TITLE "..:: Manutenção de Dados .::. PRODUTOS ::.." oDlg:lTransparent := .T. oDlg:lHelpIcon := .F. REDEFINE COLUMN BROWSE oBrw ID 101 OF oDlg UPDATE ON CHANGE (oBrw:Refresh(),oBrw:Display()) FONT oFont ADD COLUMN TO BROWSE oBrw DATA M_FAMILIA TITLE "FamÃlia" SIZE 200 ADD COLUMN TO BROWSE oBrw DATA M_CODIGO TITLE "Código" SIZE 50 COLORS 128 ADD COLUMN TO BROWSE oBrw DATA M_DESCRICA TITLE "Descrição" SIZE 350 COLORS 128 ADD COLUMN TO BROWSE oBrw DATA M_REFERENC TITLE "Referência" SIZE 100 ADD COLUMN TO BROWSE oBrw DATA M_CODBAR TITLE "Código de Barras" SIZE 100 * If nTp = 1 ADD COLUMN TO BROWSE oBrw DATA M_CN TITLE "Quant." SIZE 150 Else ADD COLUMN TO BROWSE oBrw DATA M_QUANTIDA TITLE "Estoque" SIZE 100 ADD COLUMN TO BROWSE oBrw DATA M_CN TITLE "C/N" SIZE 100 ADD COLUMN TO BROWSE oBrw DATA M_SN TITLE "S/N" SIZE 100 ADD COLUMN TO BROWSE oBrw DATA M_CUSTO TITLE "Pr.Custo" SIZE 150 COLORS 128 End * ADD COLUMN TO BROWSE oBrw DATA M_VENDA TITLE "Pr.Venda" SIZE 150 COLORS 128 ADD COLUMN TO BROWSE oBrw DATA M_FORNECED TITLE "Fornecedor" SIZE 200 ADD COLUMN TO BROWSE oBrw DATA M_EMINIMO TITLE "Est.Min." SIZE 200 ADD COLUMN TO BROWSE oBrw DATA M_EMAXIMO TITLE "Est.Máx." SIZE 200 * REDEFINE COMBOBOX oCbx VAR cCampo PROMPTS {"Descrição","Código","Referência","FamÃlia","Fornecedor"} UPDATE ID 108 OF oDlg * REDEFINE GET oGet VAR cProcura ID 106 OF oDlg ON CHANGE (BcDdProduto(oGet,cCampo,oBrw), oDlg:Refresh()) * REDEFINE BUTTON ID 107 OF oDlg ACTION (EditProduto(1), oDlg:Update(), oDlg:Refresh()) REDEFINE BUTTON ID 105 OF oDlg ACTION (MsgAlert("Finalizar Consulta","Mensagem"), oDlg:End()) REDEFINE BUTTON ID 102 OF oDlg ACTION (EditProduto(2), oDlg:Update(), oDlg:Refresh()) REDEFINE BUTTON ID 103 OF oDlg ACTION (Excluir(), oDlg:Update(), oDlg:Refresh()) * ACTIVATE DIALOG odlg CENTER * DbCloseAll() Return * Function BcDdProduto(cP,cC,oB) Local cPro := cP:cText() Do Case Case AllTrim(cC) == "Descrição" Sel(DBF(),2) cC := "M_DESCRICA" Case AllTrim(cC) == "FamÃlia" Sel(DBF(),4) cC := "M_FAMILIA" Case AllTrim(cC) == "Fornecedor" Sel(DBF(),3) cC := "M_FORNECED" Case AllTrim(cC) == "Código" Sel(DBF(),1) cC := "M_CODIGO" Case AllTrim(cC) == "Referência" Sel(DBF(),5) cC := "M_REFERENC" OTHERWISE cC := "M_DESCRICA" EndCase * dbSetOrder( INDEXORD() ) // define a ordem de filtro ordScope( 0, RTrim(cPRO) ) // TOP (De...) ordScope( 1, RTRim(cPro) ) // BOTTOM (..Até) dbGoTop() * Return(.T.) Em Cristo! com Maria!!! Rone O. Coura ************************ xHarbour + BCC55 + FiveWin + xDevStudio ************************ A pessoa que pensa que sabe alguma coisa, ainda não tem a sabedoria que precisa. (1 Cor 8, 2) Quote Link to comment Share on other sites More sharing options...
Ale SB Posted April 1, 2010 Report Share Posted April 1, 2010 ...ou... Com a xBrowse, vc necessariamnete nao precisa ficar digitando em um Get use o bSeek do proprio xBrw, para a pesquisa basta estar com o Browse em foco e começar a digitar, mas, para facilitar a vida do usuario e ele ir vendo oq esta digitando vc pode fazer isso aki: *****--- SAY's DE PESQUISA E MENSAGENS ---************************************** REDEFINE SAY oSay[1] PROMPT cMsgIndPes ID 401 OF oDlg UpDate oSay[1]:oFont := Arial12B oSay[1]:SetColor( CLR_BLACK, GetSysColor(15) ) REDEFINE SAY oSay[2] VAR cPesquisa ID 402 OF oDlg PICTURE "@!" UpDate . . . oBrw:bSeek := {|c| PSeek( c, oSay[2], oBrw ) } . . . ******************************************************************************** function PSeek( c, _oGet, _oBrw ) //////////////////////////////////////////////////////////////////////////////// // Autor : Kleyber // // Colaboracao : Dornelles / Ale SB // // Descricao : Pesquisa Sensitiva da xBrw. // // Parametros ==> // // - c : Caracter Digitado // // - _oGet : Objeto Say/Get do campo pesquisa. // // Retorno : .t. ou .f. // //////////////////////////////////////////////////////////////////////////////// ******************************************************************************** DbSeek( Upper© ) if !Found() TONE(2000, 2) c := Substr(c, 1, Len( c ) - 1) DbSeek( Upper( c ) ) return(.f.) endif _oGet:Varput© _oGet:Refresh() _oBrw:Refresh() return (.t.) id=code>id=code>@braços aleseribeli@hotmail.com Andradina/SP "Nóis é Jeca, mais nóis é Jóia"id=red> Quote Link to comment Share on other sites More sharing options...
zekasan Posted April 1, 2010 Author Report Share Posted April 1, 2010 não é bem isso que eu preciso, estou montando um cadastro, por isto o GET, a pesquisa é simultanea com o preenchimento do GET para verificar se o produto já foi cadastrado, caso este já exista será mostrado na xbrowse, caso contrario eu gravarei o conteúdo do GET... FWH 8.08 - xHarbour - xDev - VLib Quote Link to comment Share on other sites More sharing options...
Ale SB Posted April 1, 2010 Report Share Posted April 1, 2010 Eh isso : aleseribeli@hotmail.com Andradina/SP "Nóis é Jeca, mais nóis é Jóia"id=red> Quote Link to comment Share on other sites More sharing options...
zekasan Posted April 1, 2010 Author Report Share Posted April 1, 2010 Na mosca... FWH 8.08 - xHarbour - xDev - VLib Quote Link to comment Share on other sites More sharing options...
Ale SB Posted April 1, 2010 Report Share Posted April 1, 2010 Bom, no meu caso, qdo eu usava desta forma, eu nao deixava o cara cadastrar caso nao encontrar a cidade, ate pq nao precisa disso, ja q eu usava o DBF de cidades completo, entao no seu casa ta facil eh soh vc modificar a funçao Pseek q eu ja passei, para caso Nao Found, ele fechar o browse e vc continuar o cadastro, moleza..neh. o get fica assim : . . bGetCidade := {|| dbSelectArea( "Ibge" ), Aeval(oGet, {|i| i:Hide()},13,11), ; oBrw:Show(), oBrw:SetFocus() } bBrwCidade := {|| oGet[12]:Varput(Ibge->Cidade), oGet[12]:Refresh(), oBrw:Hide(), ; Aeval(oGet, {|i| i:Show()},13,11), dbSelectArea( "CadaUnic" ), ; xSetFocus(oGet[13]), oGet[13]:SetFocus(), oGet[13]:Refresh() } . . . //--> Cidade REDEFINE Get oGet[12] VAR oDbfCadaUnic:ArCidUni ID 30 OF oDlg PICTURE "@!" UpDate oGet[12]:bGotFocus := {|| IF( Empty(oDbfCadaUnic:ArCidUni), Eval(bGetCidade), nil ) } oGet[12]:bAction := {|| Eval(bGetCidade) } oBrw := TXBrowse():New( oDlg ) oBrw:CreateFromResource( 101 ) //--> Chamada ao Resource Browse. oBrw:cAlias := ( "Ibge" ) oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW //--> Estilo da barra de seleçao. oBrw:bClrSelFocus := {|| { CLR_BRANCO, CLR_AZULXP } } //--> Cor da barra de seleçao. oBrw:bClrStd := { ||{ CLR_BLACK, nRgb(255,255,210) } } oBrw:lHeader := .f. oBrw:lRecordSelector := .f. oBrw:lHScroll := .f. oBrw:lVScroll := .f. oBrw:SetRDD(.f.) oBrw:bSeek := {|c| PSeek( c, oGet[12], oBrw) } oBrw:bKeyDown := {|nKey| IF( nKey=13, Eval(bBrwCidade), nil ) } oBrw:bLDblClick :={ || Eval(bBrwCidade) } *****--- Colunas ---***** //--> 01 oCol:= oBrw:AddCol() oCol:bStrData := { || Ibge->Cidade } //oCol:cHeader := "Cidade" . . id=code>id=code>Coloquei o Trem todo ai, eh soh vc agora..analizar e pegar soh oq vc precisa e ajustar para sua rotina....blz... Obs.: Na sua tela de cadastro Crie o browse como Visivel == NO, ou qdo vc chamar sua Dialog... ACTIVATE DIALOG oDlg ; ON INIT( oBrw:Hide() ) @braços Ale aleseribeli@hotmail.com Andradina/SP "Nóis é Jeca, mais nóis é Jóia"id=red> Quote Link to comment Share on other sites More sharing options...
zekasan Posted April 1, 2010 Author Report Share Posted April 1, 2010 Obrigado pela atenção, vou testar a danada... FWH 8.08 - xHarbour - xDev - VLib 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.