Prezados,
Alguém teria alguma tabela de cidade + UF para popular 2 combos da hwgui, um é UF e outro Cidade, com todas as cidades referente a Uf selecionada.

Moderador: Moderadores
DEFINE COMBOBOX Cb_TransUf
ROW 410
COL 10
WIDTH 200
HEIGHT 110
TOOLTIP "Uf do VeÃculo"
ITEMS SEFAZ_UF[1]
VALUE 1
END COMBOBOX
#define SEFAZ_CIDADE { ;
{ "EX", "000132 ", "AFEGANISTAO" }, ;
FUNCTION IBGE( UF, Cidade )
LOCAL aList := SEFAZ_CIDADE
nPos := AScan( aList, { | e | e[ 1 ] == UF .AND. e[ 3 ] == Cidade } )
cIbge := iif( nPos == 0, "", aList[ nPos, 2 ] )
RETURN cIbge
#include "SEFAZ_CIDADE.CH"
#include "SEFAZ_UF.CH"
private aPAIS := {}
private aUF := {}
private aMunicipios := {}
FOR EACH oPAIS IN SEFAZ_CIDADE
IF oPAIS[1] == "EX"
AAdd(aPAIS,oPAIS[3])
ENDIF
NEXT
FOR EACH oUF IN SEFAZ_UF
AAdd(aUF,oUF[1])
NEXT
FOR EACH oCIDADE IN SEFAZ_CIDADE
IF oCIDADE[1] == mUF
AAdd(aMunicipios,oCIDADE[3])
ENDIF
NEXT
@ 78,376 SAY oLabel14 CAPTION "UF" SIZE 20,24
@ 105,374 GET COMBOBOX oCombo2 VAR nCombo2 ;
ITEMS aUF ;
SIZE 65,24 DISPLAYCOUNT 8 ;
ON CHANGE {|| oCombo2_onChange( aUF[nCombo2] ),oCombo3:REFRESH() }
oCombo4:SetItem( Ascan(aPAIS,RTRIM(mPAIS) ) )
oCombo2:SetItem( Ascan(aUF,RTRIM(mUF) ) )
oCombo3:SetItem( Ascan(aMunicipios,RTRIM(mCIDADE) ) )
***************************************
STATIC FUNCTION oCombo2_onChange( mUF )
***************************************
LOCAL oCIDADE
DO WHILE .T.
FOR nI := 1 TO Len(aMunicipios)
hb_ADel( aMunicipios, nI, .T. )
NEXT
IF Len(aMunicipios) <= 0
EXIT
ENDIF
ENDDO
FOR EACH oCIDADE IN SEFAZ_CIDADE
IF oCIDADE[1] == mUF
AAdd(aMunicipios,oCIDADE[3])
ENDIF
NEXT
ThisCAD:oCombo3:SetItem( Ascan(aMunicipios,RTRIM(mCIDADE) ) )
// nCombo3 := 1
RETURN( aMunicipios )
FOR nI := 1 TO Len(aMunicipios)
hb_ADel( aMunicipios, nI, .T. )
NEXT
FOR nCont = Len( aMunicipios ) TO 1 STEP -1
hb_ADel( aMunicipios, nI, .T. )
NEXT
aMunicipios := {}
Usuários vendo este fórum: Nenhum usuário registrado online e 7 visitantes