Subject |
Rowset Navigation |
From |
Mustansir Ghor <mustan31@hotmail.com> |
Date |
Sun, 23 Jun 2019 04:33:11 -0400 |
Newsgroups |
dbase.getting-started |
Dear All
Consider the below syntax
this.QLABRESG = new QUERY(this)
with (this.QLABRESG)
left = 150.0
database = form.dopd
sql = "select l.sno,l.item,r.resulty from labres l join laborat r on l.item=r.code where l.resultc is null and l.resultm is null and r.machine=:tmachine "
params["tmachine"] = ""
active = true
endwith
with (this.QLABRESG.rowset)
onNavigate = class::ROWSET_ONNAVIGATE
endwith
this.QLABREST = new QUERY(this)
with (this.QLABREST)
left = 150.0
database = form.dopd
sql = "select * from labres where sno=:sno and item=:item "
params["sno"] = ""
params["item"] = ""
masterSource = form.qlabresg.rowset
active = true
endwith
with (this.QLABREST.rowset)
indexName = "sno"
endwith
function rowset_onNavigate(type, nRows)
local mresultc,mresultm
gref = this.parent.parent
gref.lbtestname.text="R.No"+this.fields["sno"].value
gref.etext.visible=false
gref.cblogical.visible=false
gref.EDmemo.visible=false
gref.etext.enabled=true
gref.cblogical.enabled=true
gref.EDmemo.enabled=true
gref.lbunit.visible=false
mresultc=''
mresultm=''
mresultc = gref.qlabrest.rowset.fields["resultc"].value
mresultm = gref.qlabrest.rowset.fields["resultm"].value
?mresultc,mresultm
do case
case gref.qlabresg.rowset.fields["resulty"].value="M"
gref.EDmemo.visible=true
if empty(mresultm)
gref.edmemo.value=""
gref.edmemo.setfocus()
else
gref.edmemo.value = mresultm
gref.edmemo.enabled=false
endif
case gref.qlabresg.rowset.fields["resulty"].value="L"
gref.cblogical.visible=TRUE
if empty(mresultc)
gref.cblogical.value=""
gref.cblogical.setfocus()
else
gref.cblogical.value = mresultc
gref.cblogical.enabled=false
endif
case gref.qlabresg.rowset.fields["resulty"].value="N"
gref.lbunit.text=this.fields["unit"].value
gref.lbunit.visible=true
gref.etext.visible=true
if empty(mresultc)
gref.etext.value=0.000
gref.etext.setfocus()
else
gref.etext.value=ltrim(mresultc)
gref.etext.enabled=false
endif
endcase
return
In the above syntax all works well except one issue. the mresultc,mresultm which takes data from qlabrest (I verified with ? in command window) but when is is stored in appropiate control, the control displays data from the previous record.
to reconfirm the content I even displayed qlabrest in the grid.
Can anybody point the error. May I have misconception of mastersource.
Best REgards
Mustansir
|
|