hello Olaf and Tamar,
This works fine, at least for the last 10 years. this my code.
in the load of the formset
CREATE CURSOR tmp_gvert;
( vtnr N(3,0),;
vtnaam C(30))
index on vtnr tag vtnr additive
INDEX on vtnaam TAG vtnaam additive
CREATE CURSOR tmp_gem;
( postnr c(10),;
gemeente c(30),;
land c(20),;
vtnr n(3,0),;
vtnaam c(30))
INDEX on postnr TAG postnr additive
CREATE CURSOR tmp_nvert;
( postnr c(10),;
gemeente c(30),;
keuze n(1))
INDEX on postnr TAG postnr additive
in the initialisation( i call it clearscreen)
SELECT tmp_gvert
SET ORDER TO tag vtnr
APPEND BLANK
replace tmp_gvert.vtnr WITH 0
replace tmp_gvert.vtnaam WITH ""
*
sql = "select * " + CHR(13) +;
"from " + m.y_db1 + "f_vert" + CHR(13) +;
"order by vtnr "
retcode = sqlexec(handle,sql,"t_vert")
IF retcode > 0
SELECT T_vert
GO top
COUNT TO m.i
IF m.i > 0
SELECT t_vert
GO top
SCAN
SELECT tmp_gvert
SET ORDER TO tag vtnr
APPEND BLANK
replace tmp_gvert.vtnr WITH t_vert.vtnr
replace tmp_gvert.vtnaam with t_vert.vtnaam
ENDSCAN
endif
ELSE
= AERROR(aErrorArray) && Data from most recent error
WAIT WINDOW STR(aErrorArray(1),8,0) + CHR(13) +;
aErrorArray(2) + CHR(13) +;
'02 SELECT F_VERT'
RETURN
ENDIF
*
SELECT tmp_gvert
SET ORDER TO TAG vtnr
GO TOP
and than in the read of the record
sql = "select * " + CHR(13) +;
"from " + m.y_db1 + "f_gemeente" + CHR(13) +;
"where f_gemeente.postnr = " +;
"'" + thisformset.frmgem.pageframe1.page1.tb_postnr.Value + "'" + CHR(13) +;
"order by postnr"
retcode = SQLEXEC(handle,sql,'t_gem')
IF retcode > 0
SELECT t_gem
GO top
COUNT TO m.i
IF m.i > 0
SELECT t_gem
GO top
thisformset.zzswexist = 1
thisformset.frmgem.pageframe1.page1.tb_gemeente.Value = t_gem.gemeente
thisformset.frmgem.pageframe1.page1.tb_land.Value = t_gem.land
SELECT tmp_gvert
SET ORDER TO TAG vtnr
GO TOP
IF ! EMPTY(t_gem.vtnr)
=LOOKUP(tmp_gvert.vtnr,;
t_gem.vtnr,;
tmp_gvert.vtnr,;
'vtnr')
THISFORMSET.frmgem.pageframe1.page1.cb_vert.displayVALUE = tmp_gvert.vtnaam + " " + str(tmp_gvert.vtnr,3,0)
THISFORMSET.frmgem.pageframe1.page1.cb_vert.VALUE = tmp_gvert.vtnaam + " " + STR(tmp_gvert.vtnr,3,0)
THISFORMSET.frmgem.pageframe1.page1.cb_vert.REFRESH
ENDIF
ELSE
thisformset.zzswexist = 0
thisformset.frmgem.pageframe1.page1.tb_gemeente.Value = '
thisformset.frmgem.pageframe1.page1.tb_land.Value = '
SELECT tmp_gvert
SET ORDER TO TAG vtnr
GO TOP
THISFORMSET.frmgem.pageframe1.page1.cb_vert.DISPLAYVALUE=tmp_gvert.vtnaam + " " + STR(tmp_gvert.vtnr,3,0)
THISFORMSET.frmgem.pageframe1.page1.cb_vert.VALUE=tmp_gvert.vtnaam + " " + STR(tmp_gvert.vtnr,3,0)
ENDIF
SELECT t_gem
use
THISFORMSET.tstbutton (0,1,;
0,0,;
1,thisformset.zzswexist,0,0,0)
THISFORMSET.frmgem.pageframe1.page1.tb_gemeente.SETFOCUS()
ELSE
= AERROR(aErrorArray) && Data from most recent error
WAIT WINDOW STR(aErrorArray(1),8,0) + CHR(13) +;
aErrorArray(2) + CHR(13) +;
'02 SELECT F_GEMEENTE'
RETURN
ENDIF
it didn't work at the first time because i forgot the clearscreen
wfg,
Filip