Jump to content
Fivewin Brasil

CARREGAR COMBOBOX. TO COM PROBLEMAS!


bira

Recommended Posts

Amigos estou com problemas em carregar a ARRAY da combobox por outra funcao.

Gente ja tentei passar a ASECS por referencia e nada. Entao declarei ela como static.

O q acontece é q a combobox naum me apresenta nenhum conteudo. E ja testei e a array esta sendo carregada pela funcao.

DEFINE DIALOG oPDI RESOURCE "INIPDV" FONT ownd:ofont

REDEFINE BTNGET ogei[01] var i_CAIX ID 101 OF oPDI PICTURE "9999" resource "LUPA" valid(CXABERTO(I_CAIX)

REDEFINE COMBOBOX OBBA VAR cxsequ ITEMS ASECS ID 852 OF oPDI

REDEFINE BUTTON ID 150 OF opdi ACTION (Opdi:END(),retorna:=.T.)

REDEFINE BUTTON ID 160 OF opdi ACTION (opdi:end(),RETORNA:=.F.) CANCEL

OPDI:lHelpicon :=.F.

ACTIVATE DIALOG oPDI centered

return(retorna)

*************************************************

static FUNCTION CXABERTO(ufo)

*************************************************

local sewo:=select(),orwo:=dbsetorder(),temas:=0

select caixadia

set order to 1

seek dtos(glo_datacxa)

do while cd_data==glo_datacxa .and. ! eof()

if cd_vend==UFO

if cd_situ=1

AADD(ASECS,CD_SEQU)

endif

endif

skip

enddo

obba:refresh()

select(sewo)

dbsetorder(orwo)

return(.t.)

Muita paz a todos

Bira

prosoftt@bol.com.br

Link to comment
Share on other sites

Meu amigao.. um grande amigo nosso me passou esta dica q ta funcionando normalmente....

so que lembre-se q arrays tem limites... 4096 ... entao se tentar carregar em um combo um BD grande demais.. nao conseguirá...

*----- aqui eu carrego as variaveis com o conteudo que

quero chamando a funcao... atu_combo() os parametros sao

o banco de dados (alias) o primeiro campo que quero e o segundo campo que quero. (apesar de ainda nao estou usando

o segundo campo)

UniItems := Atu_Combo(3,"Nme","Cod") // Unidades de medida

CveItems := Atu_Combo(4,"Descve","Codcve") // classes

GprItems := Atu_Combo(5,"Desgpr","Codgpr") // grupos

FrnItems := Atu_Combo(2,"Nme","Cod") // fornecedores

*--------------------------------------------

Static Function Atu_Combo(nBc,Campo1,Campo2)

*--------------------------------------------

old_Sel := Select() // o bd q usava no momento

Select &nBc // o bd que quero usar pra montar a combo

cRed := Array( 0 ) // variavel array

aadd(cRed, " ") // iniciando com vazio

While !Eof()

aadd( cRed, AllTrim(&nBc->&Campo1))

dbSkip(1)

EndDo

Select &Old_Sel

Return cRed // aqui eu retorno pra var o array

ReDefine ComboBox oCodFrn Var mCodFrn ITEMS FrnItems ID 105 OF oFld:aDialogs[ 1 ] UPDATE Message "Codigo do Fornecedor";

On Change (MnmeFrn := Busc_Drop(2,3,Mcodfrn,"Nme"), Mcodfrn1 := Busc_Drop(2,3,Mcodfrn,"Cod") ) // esta funcao busc_drop eu uso pra atualizar alguns dados q preciso mas se nao precisar e desnecessaria...

espero ter te ajudado assim como os grandes aqui sempre estao me ajudando...

um clipper abracaum ae

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...