Subject Re: on_navigate with mastersource and masterfields why diffrence
From Dirk C <dirk@C.com>
Date Fri, 10 May 2024 21:21:49 +0200
Newsgroups dbase.getting-started
Attachment(s) referenties.txt


Mervyn,

thanks for your advice

for now I use the navigate buttons and the form onopen

to manipulate the add button of Afmeting query

with masterrowset is working normal, but with mastersource,

more complicated i suppose, even creating a unique nr

i just try out different ways, i realize their is a more robust way

attached the way how it's working for now


Dirk,



Op 10/05/2024 om 17:42 schreef Mervyn Bick:
> On 2024/05/09 23:16, Dirk C wrote:
>> hello to you,
>>
>> a explanation needed
>>
>>   when i use this query with masterfields, rowset_onnavigate is working
>>
>>   well
>>
>>   but if i use mastersource the rowset onnavigate is following aswell
>> but!
>>
>> only one step later,
>
>
> I can see what is happening and the work-around is to add a requery for
> VRAAGBAK_AFMETING in the onNavigate event handler.
>
> function rowset_onNavigate1(type, nRows)  // vraagbak_crossen
>    this.parent.parent.vraagbak_afmeting.requery()
>    if
> empty(this.parent.parent.vraagbak_afmeting.rowset.fields["afmvolgnr"].value)
>      this.parent.parent.DOOS_AFMETING.KNOP_AFMETING_INGAVE.visible = true
>       ?"test true"
>    else
>     this.parent.parent.DOOS_AFMETING.KNOP_AFMETING_INGAVE.visible = false
>       ? "test false"
>     endif
>     return
>
> It does, however, look as if you are doing something that is most
> unusual.  Mastersource is usually used to fetch many records from the
> child table where a field in the child table contains the same value as
> the value in a single record of the parent table.
>
> Even though there may be many matching records in the child table, your
> onNavigate event handler for the parent query will only ever look at the
> first of possibly many child records.
>
> Mervyn.
>
>
>
>



this.rowset = this.vraagbak_artikel.rowset

   function rowset_onAppend()    
           local c_CrossNum, inD_CrossNum
              inD_CrossNum = this.parent.parent.vraagbak_nummer.rowset.indexname
            this.parent.parent.vraagbak_nummer.rowset.indexname = "ivolgID" // test met create index
         if this.parent.parent.vraagbak_nummer.rowset.endoFset
             c_CrossNum = "0000000001"
        else
          if this.parent.parent.vraagbak_nummer.rowset.last()
           c_CrossNum = this.parent.parent.vraagbak_nummer.rowset.fields["eigenvolgnr"].value
            c_CrossNum= str(val(this.parent.parent.vraagbak_nummer.rowset.fields["eigenvolgnr"].value)+1,10,0,"0")
                        endif
        endif
          this.parent.parent.vraagbak_nummer.Rowset.IndexName = "Ind_CrossNum"
  return
  *****

  function rowset_onAppend1()  // vraagbak_afmeting
    local c_AfmN, Ind_AfmN
      Ind_AfmN = this.parent.parent.vraagbak_AfmNum.rowset.indexName
            this.parent.parent.vraagbak_AfmNum.rowset.IndexName = "Id_volgnr"
          if this.parent.parent.vraagbak_AfmNum.rowset.EndOfSet
                     c_AfmN = "0000000001"
          else
                if this.parent.parent.Vraagbak_AfmNum.rowset.last()  
        c_AfmN = this.parent.parent.vraagbak_AfmNum.rowset.fields["afmvolgnr"].value
                   c_AfmN = str(val(this.parent.parent.vraagbak_AfmNum.rowset.fields["afmvolgnr"].value)+1,10,0,"0")
                 endif
     Endif                
                this.parent.parent.vraagbak_AfmNum.rowset.indexName = ind_AfmN
        
  return
  *****

   function rowset_onNavigate(type, nRows)
         if empty(this.parent.parent.vraagbak_beschrijf.rowset.fields["artikelbeschrijving"].value)
      this.parent.parent.DOOS_ARTIKELINFO.KNOP_INFO_INGAVE.enabled = true   //  ?" niet zichtbaar"
     else
      this.parent.parent.DOOS_ARTIKELINFO.KNOP_INFO_INGAVE.enabled = false    //  ?"zichtbaar"
    endif
  return
  *****

  function  ingaveAfm  // voor navigatie knoppen
   if not empty(this.parent.parent.vraagbak_afmeting.rowset.fields["afmeigennr"].value)
            this.parent.parent.DOOS_AFMETING.KNOP_AFMETING_INGAVE.enabled = false //true
          elseif  empty(this.parent.parent.vraagbak_afmeting.rowset.fields["afmeigennr"].value )
           this.parent.parent.DOOS_AFMETING.KNOP_AFMETING_INGAVE.enabled = true //false // false
         endif
        return
  *****
  

   function  ingaveAfm_open  / bij openen form
   if not empty(this.vraagbak_afmeting.rowset.fields["afmeigennr"].value)
            this.DOOS_AFMETING.KNOP_AFMETING_INGAVE.enabled = false //true
         elseif  empty(this.vraagbak_afmeting.rowset.fields["afmeigennr"].value)
          this.DOOS_AFMETING.KNOP_AFMETING_INGAVE.enabled = true //false // false
         endif
  return
  *****
  
  function rowset_onSave()
   this.parent.parent.vraagbak_artikel.rowset.refreshControls()
    this.parent.parent.vraagbak_crossen.rowset.refreshControls()
  return
  *****

  function veld_merkId_when(bOpen)
  return false
  *****

  function KNOP_AFMETING_INGAVE_onClick()
   local  c_AFM
         class::rowset_onAppend1()
          if this.parent.parent.vraagbak_AFMNUM.rowset.endofSet
      c_AFM = "0000000001"
           else
           if   this.parent.parent.vraagbak_AFMNUM.rowset.last()   //q_Afm.last()
            c_Afm =str(val(this.parent.parent.vraagbak_AFMNUM.rowset.fields["afmvolgnr"].value)+1,10,0,"0")
       endif
    endif
          this.parent.parent.vraagbak_AFMETING.rowset.beginappend() //q_afm.beginappend()
           this.parent.parent.vraagbak_AFMETING.rowset.fields["afmvolgnr"].value = c_AFM  
       this.parent.parent.vraagbak_AFMETING.rowset.fields["afmeigennr"].value  = this.parent.parent.vraagbak_crossen.rowset.fields["crossvolgnr"].value
       class::afmkleurenApEd()
return
  *****

   function KNOP_MERK_TYPE_onClick()
      local f_types, c_Types
    set procedure to ..\forms\model_type.wfm additive
     this.f_types = new Model_typeform()
      this.f_types.top = form.top + 400
       this.f_types.left = form.left + 450
        this.f_types.mdi = false
        this.f_types.parent = this.parent
         c_Types = this.parent.vraagbak_crossen.rowset.Fields["crossvolgnr"].value
          this.f_types.rowset.filter=[crossvolgnr=']+c_types+[']
      this.f_types.readModal()
     close procedure ..\forms\model_type.wfm
  return
  *****

  function KNOP_AFMETING_OPSLAAN_onClick()
    this.parent.parent.vraagbak_afmeting.rowset.save()      
         class::afmkleuren()
  return
  *****

  function KNOP_PRIJSAANPASSEN_onClick()
    this.parent.parent.vraagbak_prijs.rowset.beginEdit()
     class::prijskleur(null)
  return
  *****

  function KNOP_PRIJSOPSLAAN_onClick()
     this.parent.parent.vraagbak_prijs.rowset.save()
      this.parent.parent.vraagbak_crossen.rowset.refreshControls()
       class::prijskleurOem(null)
  return
  *****

  function KNOP_PRIJSVERLATEN_onClick()
    if this.parent.parent.vraagbak_prijs.rowset.modified
      if msgbox(" wilt u deze verandering negeren ?","verandereing negeren ?",36)==6
        this.parent.parent.vraagbak_prijs.rowset.abandon()
      endif
     else
       this.parent.parent.vraagbak_prijs.rowset.abandon()
     endif
     class::prijskleurOEM(null)
  return
  *****

  function KNOP_PRIJSVERWIJDEREN_onClick()
   msgbox( " data kan niet verwijderd worden","*** bci dataverwerking ***", 48)
    this.enabled = false        
   return
  *****

  function KNOP_ARTVERLATEN_onClick()
    if this.parent.parent.rowset.modified
      if msgbox(" wilt u deze verandering negeren ?","verandereing negeren ?",36)==6
       this.parent.parent.rowset.abandon()  
      endif
     else
      this.parent.parent.rowset.abandon()  
    endif
          this.parent.parent.VELD_ZOEK.value = " "
                           this.parent.parent.veld_zoek.enabled = true
              this.parent.parent.veld_zoek.SetFocus()                
     class::kleurenoem(null)
  return
  *****

  function KNOP_ARTVERWIJDEREN_onClick()
   msgbox( " data kan niet verwijderd worden","*** bci dataverwerking ***", 48)
    this.enabled = false        
  return
  *****

  function KNOP_ARTVOLGEND_onClick()
         if(not form.rowset.next())
       form.rowset.next( -1 )
        msgbox( "Einde Data", " kan niet verder", 64 )
     endif
          class::ingaveAfm()
  return
  *****
        

  function KNOP_ARTVORIG_onClick()
    if (not form.rowset.next(-1))
      form.rowset.next(1)
        msgbox( "Begin Data", " kan niet verder", 64 )
    endif                   
          class::ingaveafm()
  return
  *****

  function KNOP_AFMETING_AANPAS_onClick()
   this.parent.parent.vraagbak_afmeting.rowset.beginEdit()      
     class::afmkleurenApEd()
  return
  *****

  function KNOP_ARTAANPASSEN_onClick()
     this.parent.parent.veld_artikelnr.value  = form.vraagbak_artikel.rowset.fields["artikelnr"].value    
          this.parent.parent.rowset.beginEdit()  
    class::kleuren()
  return
  *****

  function KNOP_ARTIKELINFO_onClick()
    local f_Ainfo, c_Info  
    set procedure to ..\forms\artikelinfo.wfm
     f_Ainfo  = new artikelInfoform()
      f_Ainfo.top = this.parent.top +100.0
      f_Ainfo.left = this.parent.left +600.0  
       f_Ainfo.mdi = false      
       f_Ainfo.parent = this.parent  // = artikelform
        c_Info = form.vraagbak_crossen.rowset.fields["eigenvolgnr"].value // eigen volgnr = van artikelscross
           f_Ainfo.rowset.filter = [eigenvolgnr=']+ c_Info +[']
          f_Ainfo.readmodal()
     close procedure ..\forms\artikelinfo.wfm
  return
  *****

  function KNOP_ARTBIJVOEGEN_onClick()  // hier wordt een volgnr aangemaakt voor basis atikel
    local Ind_Art, c_Bijvoeg
           // Ind_Art= this.parent.parent.rowset.indexname
    //  this.parent.parent.vraagbak_artikel.rowset.indexname = "identartikel"
                 this.parent.parent.rowset.last()
       if this.parent.parent.rowset.endoFset
         c_Bijvoeg = "0000000001"
       else
        this.parent.parent.rowset.last()
         c_Bijvoeg= str(val(this.parent.parent.rowset.fields["volgnr"].value)+1,10,0,"0")
       endif
       // this.parent.parent.Rowset.IndexName = Ind_Art
         this.parent.parent.rowset.beginappend()  // artikelen
          this.parent.parent.rowset.fields["volgnr"].value = c_Bijvoeg
           this.parent.parent.vraagbak_artikel.rowset.fields["artikelnr"].value = this.parent.parent.VELD_zoek.value         
         class::kleuren()
                         class::valideren()
  return
  *****

  function KNOP_EXCEL_EF_onClick()
   Local o_Excel, q_Cross, n_Rij, n_Cols, o_Range, x_Value, o_Cell
     store 0 to o_Excel, q_Cross, n_Rij, n_Cols, o_Range, x_Value, o_Cell
  
   q_Cross = this.parent.vraagbak_crossen.rowset
    o_Excel := new OleAutoClient("Excel.application")      
     o_Excel.workbooks.add()  // een nieuw blad wordt aangemaakt
      o_Excel.Activesheet.cells(1,1).select()  // selecteren van boven links cell
       o_Range := o_Excel.ActiveSheet.Range("1:1")
        o_Range.font.bold := true        
         o_Excel.visible = true
       n_Rij = 2
     do while not q_Cross.endOfSet
       n_Rij++   // verhogen van een rij
        for n_Cols = 5 to (q_Cross.fields.size -1)
          x_Value = q_Cross.fields[n_Cols].value  
           o_Cell= o_Excel.activeSheet.Cells(n_rij,n_Cols)  // 260122022
            o_cell.formulaR1C1 = ("'")+ x_Value
        next
       q_Cross.next()
     enddo
      o_Excel.ActiveSheet.Columns.AutoFit()
       o_Excel.quit()
        o_Excel =0
         q_Cross.first()
          this.parent.Veld_zoek.setFocus()
  return
  *****

  function KNOP_INFO_EDIT_onClick()
     this.parent.parent.veld_info_artikel.ColorNormal ="Black/cyan"
      this.parent.parent.veld_info_artikel.setFocus()
       this.parent.parent.vraagbak_beschrijf.rowset.beginEdit()  
  return
  *****

  function KNOP_CROSSAANPAS_onClick()
   this.parent.parent.vraagbak_crossen.rowset.beginEdit()
    class::crosskleuren(null)
  return
  *****

  function KNOP_CROSSART_onClick()
    local q_CRossC, c_RefC, q_Refa, c_Refa, ind_Art, c_Bijvoeg
         c_RefC = "crossArtikelnr='"+ this.parent.veld_zoek.value+"'"    
         q_CrossC = this.parent.vraagbak_CrossArt
         q_CrossC.rowset.beginlocate()
         q_CrossC.rowset.LocateOptions := 3
          q_CrossC.rowset.Applylocate(c_RefC)    
               if  q_CrossC.rowset.fields["crossartikelnr"].value = this.parent.veld_zoek.value  
                          msgbox( "deze referentie reeds in het systeem"+chr(13)+ ;
                        "alleen crossreferentie aanmaken of aanpassen","**** bci dataverwerking ****",48)
                           c_Refa = "Artikelnr='"+ this.parent.veld_zoek.value+"'"    
             q_Refa = this.parent.vraagbak_Artikel
               q_Refa.rowset.beginlocate()
                q_Refa.rowset.LocateOptions := 3
                 q_Refa.rowset.Applylocate(c_Refa)    
                                         this.parent.veld_zoek.value = ""
                       else  
                         Msgbox("deze referentie nog niet in het systeem"+chr(13)+;
                                     "deze referentie wordt aangemaakt" , "**** bci dataverwerking***", 48)
                         this.parent.rowset.last()
          if this.parent.rowset.endoFset
             c_Bijvoeg = "0000000001"
          else
           this.parent.rowset.last()
            c_Bijvoeg= str(val(this.parent.rowset.fields["volgnr"].value)+1,10,0,"0")
          endif
           this.parent.rowset.beginappend()  // artikelen
                           this.parent.rowset.fields["volgnr"].value = c_Bijvoeg
              this.parent.vraagbak_artikel.rowset.fields["artikelnr"].value = this.parent.VELD_zoek.value         
            class::kleuren()
                                class::ingaveAfm_open()
                    endif  
   return
   *****

   function KNOP_CROSSBIJVOEG_onClick()
   local c_Cross
    this.parent.parent.vraagbak_nummer.rowset.indexname = "ivolgID" // test met create index
     if this.parent.parent.vraagbak_nummer.rowset.endoFset
       c_Cross = "0000000001"
      else
       if this.parent.parent.vraagbak_nummer.rowset.last()
        c_Cross= str(val(this.parent.parent.vraagbak_nummer.rowset.fields["eigenvolgnr"].value)+1,10,0,"0")
       endif
     endif
       this.parent.parent.vraagbak_crossen.rowset.beginappend()
        this.parent.parent.vraagbak_crossen.rowset.fields["eigenvolgnr"].value = c_Cross
         this.parent.parent.vraagbak_crossen.rowset.fields["crossingavedatum"].value = date()                 
         this.parent.parent.keuzedoos_crossfirma.value = this.parent.parent.vraagbak_crossen.rowset.fields["crossleverancierId"]  // datalink veranderd in value
        this.parent.parent.keuzedoos_crossmerk.value  = this.parent.parent.vraagbak_crossen.rowset.fields["crossbrandnr"]
       this.parent.parent.keuzedoos_crossprod.value = this.parent.parent.vraagbak_crossen.rowset.fields["crossproductnr"]
     class::crosskleuren(null)
  return
  *****

  function KNOP_CROSSEERST_onClick()
    this.parent.parent.vraagbak_crossen.rowset.first()  
  return
  *****

  function KNOP_CROSSLAATST_onClick()
     this.parent.parent.vraagbak_crossen.rowset.last()
  return
  *****

  function KNOP_CROSSONGEDAAN_onClick()
    if this.parent.parent.vraagbak_crossen.rowset.modified
      if msgbox(" wilt u deze verandering negeren ?","verandereing negeren ?",36)==6
       this.parent.parent.vraagbak_crossen.rowset.abandon()  
      endif
     else
      this.parent.parent.vraagbak_crossen.rowset.abandon()  
    endif
    class::crosskleurenoem(null)
  return
        *****

  function KNOP_CROSSOPSLAAN_onClick()
   this.parent.parent.vraagbak_crossen.rowset.save()
   this.parent.parent.vraagbak_prijs.rowset.save()
    class::crosskleurenoem(null)
  return
  *****
/*
  function KNOP_CROSSREF_onClick()
    local o_Cross, c_Ref
   set procedure to artikelcross.wfm additive
    o_Cross = new artikelcrossForm()
     o_Cross.top = this.parent.top + 100.0
      o_Cross.left = this.parent.left + 900.0
                 o_Cross.parent =this.parent                   // 05052023 als test voor zoeken in artikelen form
     //c_ref = this.parent.rowset.fields["volgnr"].value
       //c_ref = o_cross.rowset.fields["crossvolgnr"].value // = c_ref // +c_ref+[']
                          //        this.rowset.fields["veld_zoek"].value = o_cross.rowset.fields["veld_zoek"].value
          o_Cross.open()
           // Close procedure artikelcross.wfm        
  return
  *****
*/

  function KNOP_CROSSVERWIJDEREN_onClick()
   msgbox( " data kan niet verwijderd worden","*** bci dataverwerking ***", 48)
   this.enabled = false        
         //this.parent.parent.veld_zoekref.setFocus()
         /* If msgbox(" deze crossdata verwijderen ?","Verwijderen?",36) == 6
       if this.parent.parent.vraagbak_prijs.rowset.endofSet
         this.parent.parent.vraagbak_crossen.rowset.delete()
      else
         this.parent.parent.vraagbak_prijs.rowset.delete()
         this.parent.parent.vraagbak_crossen.rowset.delete()
     endif    
   Endif
        */
  return
   *****

  function KNOP_CROSSVOLGEND_onClick()
   if(not this.parent.parent.vraagbak_crossen.rowset.next() )
       this.parent.parent.vraagbak_crossen.rowset.Next(-1)
                  msgbox("einde data","kan niet verder",64)
    endif                
  return
  *****

  function KNOP_CROSSVORIG_onClick()
          if (not this.parent.parent.vraagbak_crossen.rowset.next(-1))
      this.parent.parent.vraagbak_crossen.rowset.next(1)
        msgbox( "Begin Data", " kan niet verder", 64 )
     endif                   
  return
  *****

  function KNOP_ARTEERST_onClick()
    this.parent.parent.rowset.first()  
     class::ingaveafm()
  return
  *****

  function KNOP_INFO_INGAVE_onClick()
     if this.parent.parent.vraagbak_artikel.rowset.state ==2 or this.parent.parent.vraagbak_artikel.rowset.state  == 3
      msgbox("artikel opslaan")
     endif

     this.parent.parent.veld_info_artikel.ColorNormal ="Black/cyan"
      this.parent.parent.veld_info_artikel.setFocus()
    this.parent.parent.vraagbak_beschrijf.rowset.beginappend()  
  return
  *****

  function KNOP_INFO_ONGEDAAN_onClick()
       this.parent.parent.veld_info_artikel.ColorNormal ="Black/silver"
      this.parent.parent.vraagbak_beschrijf.rowset.abandon()
  return
  *****

  function KNOP_INFO_OPSLAAN_onClick()
     this.parent.parent.veld_info_artikel.ColorNormal ="Black/silver"
     this.parent.parent.vraagbak_beschrijf.rowset.save()  
       form.DOOS_ARTIKELINFO.KNOP_INFO_INGAVE.enabled = false
  return
  *****

  function KNOP_INFO_VERWIJDER_onClick()
  msgbox( " data kan niet verwijderd worden","*** bci dataverwerking ***", 48)
   this.enabled = false        
        /* this.parent.parent.veld_zoekref.setFocus()
            this.parent.parent.veld_info_artikel.ColorNormal ="Black/cyan"
    if msgbox(" Deze Data verwijderen ?","Verwijderen?",36) == 6
     this.parent.parent.vraagbak_beschrijf.rowset.rowset.delete()
     endif
   */          
  return
  *****

  function KNOP_ARTLAATST_onClick()
    this.parent.parent.rowset.last()  
          class::ingaveafm()
  return
  *****

  function KNOP_ARTOPSLAAN_onClick()
   class::kleurenoem(null)
    if form.rowset.state == 2 // edit
        class :: crossgegevens(null)
     else
      if not form.rowset.state ==2 and not form.rowset.state  ==3
       msgbox(" niets biigevoegd of aangepast","niets opgeslagen",48)
     else
      class::crossplus(null)    
       this.parent.parent.vraagbak_crossen.rowset.save() // crossartikelen
                 this.parent.parent.rowset.save()  // artikelen
      endif
    endif
     this.parent.parent.veld_zoek.value =  "  "
     this.parent.parent.veld_zoek.setFocus()
     form.DOOS_KNOPPEN.KNOP_ARTBIJVOEGEN.enabled = false
  return
  *****

  function kleuren
     if form.rowset.state ==2
       form.veld_artikelnr.ColorNormal ="black/cyan"
        form.keuzedoos_merk.colorNormal ="black/cyan"
         // form.veld_artgewicht.ColorNormal ="black/cyan"
        //   form.veld_artlengte.ColorNormal ="black/cyan"
        //  form.veld_artbreed.ColorNormal ="black/cyan"
        //  form.veld_arthoogte.ColorNormal ="black/cyan"
         form.veld_zoek.enabled = false
      else
       form.veld_artikelnr.ColorNormal = "black/silver"
       form.keuzedoos_merk.colorNormal ="black/cyan"
       // form.veld_artgewicht.ColorNormal ="black/cyan"
       //    form.veld_artlengte.ColorNormal ="black/cyan"
       //   form.veld_artbreed.ColorNormal ="black/cyan"
       //   form.veld_arthoogte.ColorNormal ="black/cyan"
    endif
  return
  *****

  function kleurenoem
          form.veld_artikelnr.ColorNormal ="black/silver"
           form.keuzedoos_merk.colorNormal ="black/silver"
   return
  *****

  function Crosskleuren
       form.veld_art_cross.ColorNormal ="black/cyan"
         form.keuzeveld_CrIngav.colorNormal ="black/cyan"
                 form.keuzedoos_crossmerk.colorNormal ="black/cyan"
            form.keuzedoos_crossprod.ColorNormal ="black/cyan"
                   form.keuzedoos_crossfirma.ColorNormal ="black/cyan"
              Form.keuzedoos_Crossfirma.ColorNormal = "black/cyan"
                this.parent.parent.keuzedoos_SEGM.colorNormal = "black/cyan"
  return
  *****
  

  function AfmkleurenApEd
       if this.parent.parent.vraagbak_afmeting.rowset.state == 2  or this.parent.parent.vraagbak_afmeting.rowset.state == 3
        this.parent.parent.DOOS_AFM_INHOUD.VELD_BINNENDIAM.colorNormal = "black/cyan"
                   this.parent.parent.DOOS_AFM_INHOUD.VELD_DIAMBUITEN.colorNormal = "black/cyan"
                         this.parent.parent.DOOS_AFM_INHOUD.VELD_gewicht.colorNormal = "black/cyan"
                          this.parent.parent.DOOS_AFM_INHOUD.VELD_dikte.colorNormal = "black/cyan"
                           this.parent.parent.DOOS_AFM_INHOUD.VELD_lengte.colorNormal = "black/cyan"
                                 this.parent.parent.DOOS_AFM_INHOUD.VELD_breedte.colorNormal = "black/cyan"
                                  this.parent.parent.DOOS_AFM_INHOUD.VELD_hoogte.colorNormal = "black/cyan"
        endif
  return
  *****

     function afmkleuren
              this.parent.parent.DOOS_AFM_INHOUD.VELD_BINNENDIAM.colorNormal = "black/silver"
                    this.parent.parent.DOOS_AFM_INHOUD.VELD_DIAMBUITEN.colorNormal = "black/silver"
                          this.parent.parent.DOOS_AFM_INHOUD.VELD_gewicht.colorNormal = "black/silver"
                           this.parent.parent.DOOS_AFM_INHOUD.VELD_dikte.colorNormal = "black/silver"
                            this.parent.parent.DOOS_AFM_INHOUD.VELD_lengte.colorNormal = "black/silver"
                                  this.parent.parent.DOOS_AFM_INHOUD.VELD_breedte.colorNormal = "black/silver"
                                   this.parent.parent.DOOS_AFM_INHOUD.VELD_hoogte.colorNormal = "black/silver"
        
  return
  *****

  function crosskleurenoem
            form.veld_art_cross.ColorNormal ="black/silver"
         form.keuzeveld_CrIngav.colorNormal ="black/silver"
                form.keuzedoos_crossmerk.colorNormal ="black/silver"
           form.keuzedoos_crossprod.ColorNormal ="black/silver"
                  form.keuzedoos_crossfirma.ColorNormal = "Black/silver"
            this.parent.parent.keuzedoos_SEGM.colorNormal = "black/silver"
  return
  *****
  

  function prijskleur
      form.veld_crossprijs.ColorNormal = "black/cyan"
       form.veld_crossAantal.ColorNormal ="black/cyan"
        form.keuzedoos_crossEenheid.ColorNormal = "black/cyan"
  return
  *****          

  function prijskleurOem
      form.veld_crossprijs.ColorNormal = "black/silver"
       form.veld_crossAantal.ColorNormal ="black/silver"
        form.keuzedoos_crossEenheid.ColorNormal = "black/silver"
  return
  *****          

  function KNOP_PRIJSINGAVE_onClick()
    this.parent.parent.vraagbak_prijs.rowset.beginappend()
    class::prijskleur(null)
    form.veld_crossaantal.setFocus()
  return
  *****

  function KNOP_AFMETING_VERLATEN_onClick()
     if  this.parent.parent.vraagbak_afmeting.rowset.modified  
       if msgbox(" wilt u deze verandering negeren ?","verandereing negeren ?",36)==6
       this.parent.parent.vraagbak_afmeting.rowset.abandon()  
      endif
     else
      this.parent.parent.vraagbak_afmeting.rowset.abandon()  
          endif
    class::afmkleuren()
  return
  *****
  function VELD_VOLGCROSS_when(bOpen)
  return false
  *****

  function VELD_VOLGEN_when(bOpen)
  return false
  *****

  function VELD_ZOEK_onKey(nChar, nPosition,bShift,bControl)
   /*this.parent.rowset.IndexName = "refartikel"
         this.parent.rowset.first()
     this.parent.rowset.findKeynearest(Form.Veld_Zoek.value)
          if not this.parent.rowset.fields["artikelnr"].value  = this.value
          this.parent.DOOS_KNOPPEN.knop_Artbijvoegen.enabled = true
          else
          this.parent.DOOS_KNOPPEN.KNOP_ARTBIJVOEGEN.enabled = false
     endif
        */
return
  *****

  function form_onOpen()
     this.vraagbak_artikel.rowset.first()  
     if empty(form.vraagbak_beschrijf.rowset.fields["artikelbeschrijving"].value)
      form.DOOS_ARTIKELINFO.KNOP_INFO_INGAVE.enabled = true   //  ?" niet zichtbaar"
     else
      form.DOOS_ARTIKELINFO.KNOP_INFO_INGAVE.enabled = false    //  ?"zichtbaar"
     endif
    class::valideren(null)
           class::ingaveafm_open()
            this.veld_zoek.setFocus()
  return
  *****

  function VELD_ZOEK_onOpen()
     if this.parent.veld_zoek.value = Null
      this.parent.parent.knop.Artbijvoegen.enabled = false //return false // this.parent.parent.knop_artbijvoegen.enabled = false
    endif
  return
  *****

  function crossgegevens
   form.vraagbak_artikel.rowset.fields["artikelnr"].value = this.parent.parent.VELD_ARTIKELNR.value
    this.parent.parent.vraagbak_crossen.rowset.fields["crossbrandnr"].value =  this.parent.parent.rowset.fields["brandnr"].value  
     this.parent.parent.vraagbak_crossen.rowset.fields["crossArtikelnr"].value = form.vraagbak_artikel.rowset.fields["artikelnr"].value
    //  this.parent.parent.rowset.save()      
    //   this.parent.parent.vraagbak_crossen.rowset.save()
      this.parent.parent.VELD_ARTIKELNR.value = " "
     this.parent.parent.VELD_ZOEK.value = " "
    this.parent.parent.veld_zoek.enabled = true  
  return  
  *****
  
  function Verlaatgegevens
   form.vraagbak_artikel.rowset.fields["artikelnr"].value = this.parent.parent.VELD_ARTIKELNR.value
    this.parent.parent.vraagbak_crossen.rowset.fields["crossbrandnr"].value =  this.parent.parent.rowset.fields["brandnr"].value  
     this.parent.parent.vraagbak_crossen.rowset.fields["crossArtikelnr"].value = form.vraagbak_artikel.rowset.fields["artikelnr"].value
      this.parent.parent.rowset.abandon()      
       this.parent.parent.vraagbak_crossen.rowset.abandon()
        this.parent.parent.VELD_ARTIKELNR.value = " "
         this.parent.parent.VELD_ZOEK.value = " "
               this.parent.parent.veld_zoek.enabled = true  
  return  
  *****

  function  crossplus  // wordt gebruikt bij aanmaken en opslaan van nieuw artikelnr
    local c_Cross
     this.parent.parent.vraagbak_nummer.rowset.indexname = "ivolgID"
      if this.parent.parent.vraagbak_nummer.rowset.endoFset
        c_Cross = "0000000001"
       else
         if this.parent.parent.vraagbak_nummer.rowset.last()
        //  crossK = this.parent.parent.vraagbak_nummer.rowset.fields["eigenvolgnr"].value
          c_Cross= str(val(this.parent.parent.vraagbak_nummer.rowset.fields["eigenvolgnr"].value)+1,10,0,"0")
         endif
      endif
        this.parent.parent.vraagbak_crossen.rowset.beginappend()
         this.parent.parent.vraagbak_crossen.rowset.fields["eigenvolgnr"].value = c_Cross
          this.parent.parent.vraagbak_crossen.rowset.fields["crossbrandnr"].value =  this.parent.parent.rowset.fields["brandnr"].value  
           this.parent.parent.vraagbak_crossen.rowset.fields["crossArtikelnr"].value = this.parent.parent.vraagbak_artikel.rowset.fields["artikelnr"].value
            this.parent.parent.vraagbak_crossen.rowset.fields["crossingavedatum"].value =  date()
  return
  *****  

  function valideren
      if empty(form.veld_zoek.value)
           msgbox("gelieve eerst artikelnr zoeken","data ingeven",64) // this.parent.parent.knop_Artbijvoegen.enabled = false
          this.DOOS_KNOPPEN.KNOP_ARTBIJVOEGEN.enabled = false //classname //knop_artbijvoegen.enabled = false
       endif
  return      
  *****
endclass


Warning: Unknown: write failed: No space left on device (28) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct () in Unknown on line 0