/[papo]/papo/forms/addresses.nebc
ViewVC logotype

Diff of /papo/forms/addresses.nebc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by mhepp, Wed Apr 16 17:44:41 2003 UTC revision 1.2 by mhepp, Thu Apr 17 16:23:04 2003 UTC
# Line 4  $masterDatasource               # el nom Line 4  $masterDatasource               # el nom
4  $masterBlock => 'addressentityBlock'  $masterBlock => 'addressentityBlock'
5  $fields                         # una referencia a un array de referencias a hashes. Claves usadas: label, entry, width, name, field  $fields                         # una referencia a un array de referencias a hashes. Claves usadas: label, entry, width, name, field
6  $masterBoxLabel => 'Sucursal'                        $masterBoxLabel => 'Sucursal'                      
7  #locales  $detailBlockLabel => 'direcciones'
8  $name => 'Search'               # el nombre de la página (lo que dice en el tag de la página)  $name => 'Direcciones'               # el nombre de la página (lo que dice en el tag de la página)
9  </neb:Vars>  </neb:Vars>
   
   
10  <!-- datasources -->  <!-- datasources -->
11   <datasource name="addressDataSource"   <datasource name="addressDataSource"
12      database="papo" table="address, _address_data" historytable="_address_data"      database="papo" table="address, _address_data" historytable="_address_data"
# Line 25  $name => 'Search'               # el nom Line 23  $name => 'Search'               # el nom
23      </and>      </and>
24      </condition>      </condition>
25    </datasource>    </datasource>
   
   
  <datasource database="papo" name="addressTypeResultDataSource"  
  table="address_type, _address_type_data" historytable="_address_type_data">  
     <condition>  
     <and>  
       <eq>  
         <cfield name="address_type.id"/>  
         <cfield name="_address_type_data._table"/>  
       </eq>  
       <null>  
          <cfield name="_address_type_data._end_t"/>  
       </null>  
     </and>  
     </condition>  
   </datasource>  
   
26  <!-- triggers -->  <!-- triggers -->
27      <trigger name="addressRollbackTrigger" type="NAMED"><![CDATA[
28        import hack
29   <trigger name="addressTypeNameSearchTrigger" type="NAMED"><![CDATA[      hack.rollback(addressBlock)
30     print "trigger de busqueda de nombres"    ]]></trigger>
31     addressBlock.firstRecord()  <trigger name="addressDeleteTrigger" type="NAMED"><![CDATA[
32     for index in range(addressBlock.getRecordCount()):      addressBlock.deleteRecord()
33          if str(addressBlock.addressTypeIdEntry) != "":      addressBlock.commit()
             addressTypeResultBlock.processRollback()  
             addressTypeResultBlock.initQuery()  
             addressTypeResultBlock.addressTypeResultIdEntry= str(addressBlock.addressTypeIdEntry)  
             addressTypeResultBlock.processQuery()  
             addressBlock.addressTypeNameEntry= str(addressTypeResultBlock.addressTypeResultNameEntry)  
         addressBlock.nextRecord()  
34    ]]></trigger>    ]]></trigger>
   
   
     <!-- new_schema_begin -->  
           <trigger type="NAMED" name="callAddressTypeTrigger"><![CDATA[  
               try:  
                 # gnue version <= 0.4  
                 from gnue.forms.GFEvent import GFEvent  
               except ImportError:  
                 # gnue version >= 0.5  
                 from gnue.common.events.Event import Event as GFEvent  
   
               # busy clock  
               form._object.dispatchEvent(GFEvent('beginWAIT'))  
               setStatusText('buscando...')  
   
               def setAddressType (recNo):  
                 if recNo>=0:  
                   addressTypeResultBlock.jumpRecord (recNo)  
                   addressBlock.addressTypeIdEntry= str(addressTypeResultBlock.addressTypeResultIdEntry)  
                   addressBlock.addressTypeNameEntry= str(addressTypeResultBlock.addressTypeResultNameEntry)  
   
               # look for the name...  
               addressTypeResultBlock.processRollback ()  
               addressTypeResultBlock.initQuery ()  
               addressTypeResultBlock.addressTypeResultNameEntry= str(addressBlock.addressTypeNameEntry)+'%'  
               addressTypeResultBlock.processQuery ()  
   
               # are there too much results?  
               resultCount= addressTypeResultBlock.getRecordCount ()  
               if resultCount>1:  
                 # do the select-man  
                 runForm ('addressTypeSelect.gfd', {  
                   'data':addressTypeResultBlock,  
                   'callback': setAddressType  
                 })  
               elif resultCount==1:  
                 setAddressType (0)  
   
               setStatusText('Aceptar')  
               form._object.dispatchEvent(GFEvent('endWAIT'))  
           ]]></trigger>  
   
35  <!-- forms -->  <!-- forms -->
36      <page name="neb:$name">
37    <page name="Direcciones">    <neb:Sub neb:src="nameSearch.nebc" block="addressBlock" idEntry="addressTypeIdEntry" nameEntry="addressTypeNameEntry" searchTrigger="callAddressTypeTrigger">
38    <trigger type="Pre-Focusin" src="addressTypeNameSearchTrigger"/>      </neb:Sub>
39     <!--  <trigger type="Pre-Focusout" src="askForChangesTrigger"/> -->     <!--  <trigger type="Pre-Focusout" src="askForChangesTrigger"/> -->
40      <box label="neb:$masterBoxLabel"    <box label="neb:$masterBoxLabel"
41       x="0" y="0" height="5" width="84">      x="0" y="0" height="5" width="84">
42      <block name="neb:$masterBlock" datasource="neb:$masterDatasource">      <block name="neb:$masterBlock" datasource="neb:$masterDatasource">
43        <neb:Block>my $x = 1; foreach (@$fields) {</neb:Block>        <neb:Block>my $x = 1; foreach (@$fields) {</neb:Block>
44        <label text="neb:$_->{label}" x="neb:$x" y="1" />        <label text="neb:$_->{label}" x="neb:$x" y="1" />
# Line 113  $name => 'Search'               # el nom Line 46  $name => 'Search'               # el nom
46        <neb:Block>$x+=$_->{width};}</neb:Block>        <neb:Block>$x+=$_->{width};}</neb:Block>
47      </block>        </block>  
48    </box>    </box>
49    <box label="Direcciones"    <box label="neb:$detailBlockLabel"
50      x="0" y="5" height="15" width="84">      x="0" y="5" height="15" width="84">
51      <block name="addressBlock" datasource="addressDataSource">      <block name="addressBlock" datasource="addressDataSource">
52        <label text="tipo" x="1" y="1"/>        <label text="tipo" x="1" y="1"/>
# Line 138  $name => 'Search'               # el nom Line 71  $name => 'Search'               # el nom
71        <button x="22" y="2" trigger="callAddressTypeTrigger" width="7" label="Buscar"        <button x="22" y="2" trigger="callAddressTypeTrigger" width="7" label="Buscar"
72          name="addressTypeBtn" height="8"/>          name="addressTypeBtn" height="8"/>
73      </block>      </block>
       
       <block name="addressTypeResultBlock"  datasource="addressTypeResultDataSource">  
       <entry name="addressTypeResultIdEntry" field="_address_type_data._table"  
         x="75" y="4" width="2" hidden=""/>  
       <entry name="addressTypeResultNameEntry" field="_address_type_data.name"  
         x="78" y="4" width="20"  hidden=""/>  
     </block>  
74    </box>    </box>
75    </page>    </page>
76    <!-- /Componente de DIRECCIONES -->

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26