| Subject |
Re: how to link a entryfield when using brows |
| From |
AGOSTINHO <AGOSTINHOTEIXEIRA@YAHOO.COM> |
| Date |
Wed, 02 Mar 2022 21:19:46 -0500 |
| Newsgroups |
dbase.getting-started |
Ken Mayer thank you very much for your advice
Mervyn thank you for the sample bellow.
Agostinho
Mervyn Bick Wrote:
> On 2022/03/02 06:31, Ken Mayer wrote:
>
> > I don't think you can. Weird. I did some experimenting and can't find a
> > way to do that. You *really* need to learn the modern way of working
> > with dBASE. Drag a table to the form from the Navigator, and work from
> > there (or for more complex forms, use a data module) ...
>
> I depends on what Agostinho wants to do.
>
> If he wants to show the value of each field of the selected record in a
> separate entryfield then yes. Example attached.
>
> If he wants to show just the value in the field he's clicked on in the
> browser in a single entryfield then no, it can't be done using XDML.
> This is, however, quite straightforward using OODML. Example attached.
>
> Mervyn.
> ** END HEADER -- do not remove this line
> //
> // Generated on 2022-03-02
> //
> parameter bModal
> local f
> f = new browserForm()
> if (bModal)
> f.mdi = false // ensure not MDI
> f.readModal()
> else
> f.open()
> endif
>
> class browserForm of FORM
> with (this)
> onOpen = class::FORM_ONOPEN
> onClose = class::FORM_ONCLOSE
> height = 18.0455
> left = 31.1429
> top = 0.5909
> width = 145.4286
> text = ""
> view = ":DBASESAMPLES:fish.dbf"
> endwith
>
> this.BROWSE1 = new BROWSE(this)
> with (this.BROWSE1)
> onLeftMouseUp = class::BROWSE1_ONLEFTMOUSEUP
> height = 10.5909
> left = 7.8571
> top = 2.7727
> width = 121.0
> alias = "FISH"
> endwith
>
> this.ENTRYFIELD1 = new ENTRYFIELD(this)
> with (this.ENTRYFIELD1)
> height = 1.0
> left = 27.7143
> top = 15.0909
> width = 41.1429
> value = "Entryfield1"
> endwith
>
> this.ENTRYFIELD2 = new ENTRYFIELD(this)
> with (this.ENTRYFIELD2)
> height = 1.0
> left = 71.1429
> top = 15.0909
> width = 52.8571
> value = "Entryfield2"
> endwith
>
> this.ENTRYFIELD3 = new ENTRYFIELD(this)
> with (this.ENTRYFIELD3)
> height = 1.0
> left = 13.0
> top = 15.0909
> width = 9.2857
> value = "Entryfield3"
> endwith
>
>
> function BROWSE1_onLeftMouseUp(flags, col, row)
> form.entryfield1.value = name
> form.entryfield2.value = species
> form.entryfield3.value = id
> return
>
>
> function form_onClose()
> use
> return
>
> function form_onOpen()
> form.entryfield1.value = name
> form.entryfield2.value = species
> form.entryfield3.value = id
> return
>
> endclass
>
> ** END HEADER -- do not remove this line
> //
> // Generated on 2022-03-02
> //
> parameter bModal
> local f
> f = new browser1Form()
> if (bModal)
> f.mdi = false // ensure not MDI
> f.readModal()
> else
> f.open()
> endif
>
> class browser1Form of FORM
> with (this)
> onOpen = class::FORM_ONOPEN
> height = 16.0
> left = 35.1429
> top = 1.6364
> width = 127.4286
> text = ""
> endwith
>
> this.DBASESAMPLES1 = new DATABASE(this)
> with (this.DBASESAMPLES1)
> left = 15.0
> top = 1.0
> width = 11.0
> height = 1.0
> databaseName = "DBASESAMPLES"
> active = true
> endwith
>
> this.FISH1 = new QUERY(this)
> with (this.FISH1)
> left = 16.0
> top = 1.0
> width = 3.0
> height = 1.0
> database = form.dbasesamples1
> sql = "select * from FISH.DBF"
> active = true
> endwith
>
> this.GRID1 = new GRID(this)
> with (this.GRID1)
> onLeftMouseUp = class::GRID1_ONLEFTMOUSEUP
> dataLink = form.fish1.rowset
> columns["COLUMN1"] = new GRIDCOLUMN(form.GRID1)
> with (columns["COLUMN1"])
> dataLink = form.fish1.rowset.fields["id"]
> editorType = 1 // EntryField
> width = 15.7143
> endwith
> columns["COLUMN2"] = new GRIDCOLUMN(form.GRID1)
> with (columns["COLUMN2"])
> dataLink = form.fish1.rowset.fields["name"]
> editorType = 1 // EntryField
> width = 42.8571
> endwith
> columns["COLUMN3"] = new GRIDCOLUMN(form.GRID1)
> with (columns["COLUMN3"])
> dataLink = form.fish1.rowset.fields["species"]
> editorType = 1 // EntryField
> width = 57.1429
> endwith
> columns["COLUMN4"] = new GRIDCOLUMN(form.GRID1)
> with (columns["COLUMN4"])
> dataLink = form.fish1.rowset.fields["length cm"]
> editorType = 3 // SpinBox
> width = 14.2857
> endwith
> columns["COLUMN5"] = new GRIDCOLUMN(form.GRID1)
> with (columns["COLUMN5"])
> dataLink = form.fish1.rowset.fields["description"]
> editorType = 5 // Editor
> width = 28.5714
> endwith
> with (columns["COLUMN1"].headingControl)
> value = "ID"
> endwith
>
> with (columns["COLUMN2"].headingControl)
> value = "Name"
> endwith
>
> with (columns["COLUMN3"].headingControl)
> value = "Species"
> endwith
>
> with (columns["COLUMN4"].editorControl)
> rangeMax = 100
> rangeMin = 1
> endwith
>
> with (columns["COLUMN4"].headingControl)
> value = "Length CM"
> endwith
>
> with (columns["COLUMN5"].headingControl)
> value = "Description"
> endwith
>
> height = 8.0909
> left = 6.4286
> top = 4.0909
> width = 114.2857
> endwith
>
> this.ENTRYFIELD1 = new ENTRYFIELD(this)
> with (this.ENTRYFIELD1)
> height = 1.0
> left = 40.7143
> top = 13.0909
> width = 49.7143
> value = "Entryfield1"
> endwith
>
> this.TEXTLABEL1 = new TEXTLABEL(this)
> with (this.TEXTLABEL1)
> height = 1.0
> left = 27.8571
> top = 13.2727
> width = 12.0
> text = "Textlabel1"
> endwith
>
> this.rowset = this.fish1.rowset
>
> function GRID1_onLeftMouseUp(flags, col, row)
> cmd = 'form.entryfield1.value = form.grid1.columns["column'+form.grid1.currentcolumn+'"].datalink.value'
> &cmd
> cmd = 'form.textlabel1.text = form.grid1.columns["column'+form.grid1.currentcolumn+'"].headingcontrol.value'
> &cmd
> return
>
> function form_onOpen()
> cmd = 'form.entryfield1.value = form.grid1.columns["column'+form.grid1.currentcolumn+'"].datalink.value'
> &cmd
> cmd = 'form.textlabel1.text = form.grid1.columns["column'+form.grid1.currentcolumn+'"].headingcontrol.value'
> &cmd
> return
>
> endclass
>
|
|