PDA

View Full Version : cDbCJGrid apenas a última Grid mostra dados



HeitorArgenta
6-Apr-2022, 04:16 PM
Boa tarde,

Tenho uma view com 8 cDbCJGrids, cada linha na grid é um CHUTE do USUARIO, o USUARIO pode chutar um PAIS (outra tabela) e sua posição. (É um bolão da copa, estou criando pra aprender dataflex) Cada grid é um grupo da Copa e criei um Dicionário para cada grupo adicionando a letra do grupo no final "ocadpaisA_DD" para o grupo A e "ocadchuteB_DD" para o grupo B



Object oCADPAIS_DD is a cCADPAISDataDictionary
End_Object // oCADPAIS_DD

Object oCADUSUARIO_DD is a cCADUSUARIODataDictionary
Set Allow_Foreign_New_Save_State to True
End_Object // oCADUSUARIO_DD


Object oCADCHUTE_DD is a cCADCHUTEDataDictionary
Set DDO_Server To oCADPAIS_DD
Set DDO_Server To oCADUSUARIO_DD
Set Constrain_File To CADUSUARIO.File_Number
End_Object // oCADCHUTE_DD


//DD Grupo A
Object oCADPAISA_DD is a cCADPAISDataDictionary
Procedure OnConstrain
Forward Send OnConstrain
Constrain CADPAIS as ( CADPAIS.GRUPO = "A" )
End_Procedure
End_Object
Object oCADCHUTEA_DD is a cCADCHUTEDataDictionary
Set DDO_Server to oCADPAISA_DD
Set DDO_Server to oCADUSUARIO_DD
Set Constrain_File to CADUSUARIO.File_Number
Set Auto_Fill_State to True
Procedure Field_Defaults
Forward Send Field_Defaults
Set Field_Changed_Value Field CADCHUTE.GRUPO to "A"
End_Procedure
End_Object // oCADCHUTE_DD


E nas Grids eu uso assim:
Set Server to oCADCHUTEA_DD


Só que das 8 grids que criei dessa forma, apenas a última carrega dados conforme eu mudo o USUÁRIO, eu acabo precisando clicar em cada grid para ela mostrar os dados.
Quando eu crio os registros a grid funciona normalmente.


Agradeço antecipadamente.
-Heitor Argenta

Samuel Pizarro
6-Apr-2022, 09:06 PM
Acredito q vc precise criar um alias pra cada grupo.
Pois todos seus cadchuteX_dd sao baseados na mesma classe q por sua vez estao baseados na mesma tabela e poetando compartilham o mesmo buffer global.

Acho q isso so vai resolver criando tabelas alias pra cada grupo.

Olhe no help sobre alias...

HeitorArgenta
15-Apr-2022, 12:30 PM
Obrigado Samuel, criei os alias e assim consegui resolver o problema. Foi bem fácil, achei que seria um pouco difícil, só precisei mudar o pbUseDDRelates para false e já tava funcionando como eu queria.

Samuel Pizarro
16-Apr-2022, 09:56 AM
jóia..