/[papo]/papo/forms/priceType.gfd
ViewVC logotype

Diff of /papo/forms/priceType.gfd

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

revision 1.8 by apronotti, Fri Dec 27 16:04:22 2002 UTC revision 1.9 by styxman, Wed Feb 19 23:09:51 2003 UTC
# Line 36  Line 36 
36      </condition>      </condition>
37    </datasource>    </datasource>
38    
39    <datasource database="papo" name="parentPriceTypeDataSource" table="_price_type_data">    <!-- you're suppossed to search with yhis datasource-->
40      <datasource database="papo" name="searchingPriceTypeDataSource" table="price_type, _price_type_data">
41        <condition>
42        <and>
43          <eq>
44            <cfield name="price_type.id"/>
45            <cfield name="_price_type_data._table"/>
46          </eq>
47          <null>
48             <cfield name="_price_type_data._end_t"/>
49          </null>
50        </and>
51        </condition>
52      </datasource>
53    
54      <datasource database="papo" name="parentPriceTypeDataSource" table="_price_type_data">
55      <condition>      <condition>
56      <and>      <and>
57        <eq>        <eq>
# Line 66  Line 81 
81    </datasource>    </datasource>
82    
83    <trigger type="On-Startup">    <trigger type="On-Startup">
84        print 'on-startup'
85      #print "parameter = '%s'" % getParameter('initId')      #print "parameter = '%s'" % getParameter('initId')
86    </trigger>    </trigger>
87        
88    <trigger name="askForChangesTrigger" type="NAMED">    <trigger name="askForChangesTrigger" type="NAMED">
89        print 'askForChangesTrigger'
90      import hack      import hack
91      hack.confirmPageChanges(self, 'commitTrigger', priceTypeBlock)      hack.confirmPageChanges(self, 'commitTrigger', priceTypeBlock)
92    </trigger>    </trigger>
93    
94    <trigger name="commitTrigger" type="NAMED">    <trigger name="commitTrigger" type="NAMED">
95        print 'commitTrigger'
96      if str(priceTypeBlock.priceTypeIdEntry) == "1":      if str(priceTypeBlock.priceTypeIdEntry) == "1":
97        genericBox('La lista base no se puede modificar',['OK'])        genericBox('La lista base no se puede modificar',['OK'])
98        priceTypeBlock.processRollback(1)        priceTypeBlock.processRollback(1)
# Line 100  Line 118 
118    </trigger>    </trigger>
119    
120    <trigger name="priceTypeDeleteTrigger" type="NAMED">    <trigger name="priceTypeDeleteTrigger" type="NAMED">
121        print 'priceTypeDeleteTrigger'
122      if str(priceTypeBlock.priceTypeIdEntry) == "1":      if str(priceTypeBlock.priceTypeIdEntry) == "1":
123        genericBox('La lista base no se puede borrar',['OK'])        genericBox('La lista base no se puede borrar',['OK'])
124      else:      else:
# Line 108  Line 127 
127    </trigger>    </trigger>
128    
129    <trigger name="priceTypeRollbackTrigger" type="NAMED">    <trigger name="priceTypeRollbackTrigger" type="NAMED">
130        print 'priceTypeRollbackTrigger'
131      import hack      import hack
132      hack.rollback(priceTypeBlock)      hack.rollback(priceTypeBlock)
133        hack.rollback(showPriceTypeNameBlock)
134    </trigger>    </trigger>
135    
136    <trigger type="NAMED" name="searchTrigger">    <trigger type="NAMED" name="searchTrigger">
137        print 'searchTrigger'
138      priceTypeResultBlock.processRollback()      priceTypeResultBlock.processRollback()
139      priceTypeResultBlock.initQuery()      priceTypeResultBlock.initQuery()
140      priceTypeResultBlock.nameListEntry = ("%s" % searchPriceListBlock.searchNameEntry)+"%"      priceTypeResultBlock.nameListEntry = ("%s" % searchPriceListBlock.searchNameEntry)+"%"
# Line 120  Line 142 
142    </trigger>    </trigger>
143    
144    <trigger type="NAMED" name="printTrigger">    <trigger type="NAMED" name="printTrigger">
145        print 'printTrigger'
146      import string      import string
147      import hack      import hack
148        
149      callTrigger('searchPageFocusoutTrigger')      callTrigger('searchPageFocusoutTrigger')
150      searchProductByNameBlock.processRollback()      searchProductByNameBlock.processRollback()
151      searchProductByCodeBlock.processRollback()      searchProductByCodeBlock.processRollback()
# Line 136  Line 159 
159      table.append(line)      table.append(line)
160      for idx in range(recordCount-1):      for idx in range(recordCount-1):
161        line = string.rjust(str(priceModifyBlock.priceModifyCodeListEntry),10)        line = string.rjust(str(priceModifyBlock.priceModifyCodeListEntry),10)
162        line += " | "+string.ljust(str(priceModifyBlock.priceModifyNameListEntry),30)        line += " | "+string.ljust(str(priceModifyBlock.priceModifyNameListEntry),30)
163        line += " | "+string.rjust(str(priceModifyBlock.priceModifyPriceListEntry),14)        line += " | "+string.rjust(str(priceModifyBlock.priceModifyPriceListEntry),14)
164        table.append(line)        table.append(line)
165        priceModifyBlock.nextRecord()        priceModifyBlock.nextRecord()
# Line 145  Line 168 
168    </trigger>    </trigger>
169    
170    <trigger type="NAMED" name="searchPageFocusoutTrigger">    <trigger type="NAMED" name="searchPageFocusoutTrigger">
171       print 'searchPageFocusoutTrigger'
172     priceTypeBlock.processRollback()     priceTypeBlock.processRollback()
173     priceModifyBlock.processRollback()     priceModifyBlock.processRollback()
174     if priceTypeResultBlock.getRecordCount() > 0 and not priceTypeResultBlock.getCurrentRecord().isEmpty():     if priceTypeResultBlock.getRecordCount() > 0 and not priceTypeResultBlock.getCurrentRecord().isEmpty():
175       priceTypeBlock.initQuery()       priceTypeBlock.initQuery()
176       priceTypeBlock.priceTypeIdEntry = ("%s" % priceTypeResultBlock.priceTypeIdREntry)       priceTypeBlock.priceTypeIdEntry = str(priceTypeResultBlock.priceTypeIdREntry)
177       priceTypeBlock.processQuery()       priceTypeBlock.processQuery()
178    </trigger>    </trigger>
179    
180  <page name="Listas de Precios">    <page name="Listas de Precios">
181   <trigger type="Pre-Focusout" src="searchPageFocusoutTrigger"/>      <trigger type="Pre-Focusout" src="searchPageFocusoutTrigger"/>
182   <block name="searchPriceListBlock" datasource="searchDataSource" transparentBlock="" restrictInsert="">      <block name="searchPriceListBlock" datasource="searchDataSource" transparentBlock="" restrictInsert="">
183          <label text="Lista de precios a buscar"        <label text="Lista de precios a buscar"
184            x="1" y="1"/>          x="1" y="1"/>
185          <entry name="searchNameEntry"        <entry name="searchNameEntry"
186            x="1" y="2" width="35">          x="1" y="2" width="35">
187          </entry>        </entry>
188          <button x="36" y="2" trigger="searchTrigger" width="9" label="Buscar"        <button x="36" y="2" trigger="searchTrigger" width="9" label="Buscar"
189                  name="searchBtn" height="1"/>                name="searchBtn" height="1"/>
190          <button x="46" y="2" trigger="printTrigger" width="9" label="Imprimir"        <button x="46" y="2" trigger="printTrigger" width="9" label="Imprimir"
191                  name="printBtn" height="1"/>                name="printBtn" height="1"/>
192    
193       </block>      </block>
194       <block name="priceTypeResultBlock" datasource="priceTypeResultDataSource">      <block name="priceTypeResultBlock" datasource="priceTypeResultDataSource">
195          <entry name="priceTypeIdREntry" field="price_type.id" hidden="" x="1" y="1" width="20" />        <entry name="priceTypeIdREntry" field="price_type.id" hidden="" x="1" y="1" width="20" />
196          <label text="Resultado" x="1" y="3"/>        <label text="Resultado" x="1" y="3"/>
197          <entry name="nameListEntry" field="_price_type_data.name"        <entry name="nameListEntry" field="_price_type_data.name"
198            x="1" y="4" width="40" rows="12"/>          x="1" y="4" width="40" rows="12"/>
199          <scrollbar page="12"        <scrollbar page="12"
200            x="42" y="4" width="1" height="12"/>          x="42" y="4" width="1" height="12"/>
201       </block>      </block>
202    </page>    </page>
203    
204    
205    <page name="Lista de Precios">    <page name="Lista de Precios">
206    <trigger type="Pre-Focusout" src="askForChangesTrigger"/>  
207    <box label="Lista de Precios"      <!-- new_schema_begin -->
208    x="0" y="0" height="20" width="64">      <block name="searchingPriceTypeBlock" datasource="searchingPriceTypeDataSource">
209       <block name="priceTypeBlock" datasource="priceTypeDataSource">        <entry name="idEntry" field="_table"
210            x="1" y="1" hidden="y"/>
211          <entry name="nameEntry" field="name"
212            x="1" y="1" hidden="y"/>
213        </block>
214        <trigger type="Pre-Focusin">
215          <!-- this is needed for updating some fields, like price_type there below -->
216          child = str(priceTypeBlock.priceTypeIdEntry)
217          parent= str(priceTypeBlock.parentPriceTypeEntry)
218          if parent!='' and str(priceTypeBlock.priceTypeIdEntry)!='1':
219            # look for the name...
220            searchingPriceTypeBlock.processRollback ()
221            searchingPriceTypeBlock.initQuery ()
222            searchingPriceTypeBlock.idEntry= parent
223            searchingPriceTypeBlock.processQuery ()
224    
225            # ... and show it
226            showPriceTypeNameBlock.newRecord ()
227            showPriceTypeNameBlock.priceTypeNameEntry= str(searchingPriceTypeBlock.nameEntry)
228            showPriceTypeNameBlock.commit ()
229          else:
230            # clear it
231            showPriceTypeNameBlock.newRecord ()
232            showPriceTypeNameBlock.priceTypeNameEntry= ''
233            showPriceTypeNameBlock.commit ()
234        </trigger>
235        <!-- new_schema_end -->
236    
237        <trigger type="Pre-Focusout" src="askForChangesTrigger"/>
238        <box label="Lista de Precios"
239          x="0" y="0" height="20" width="64">
240          <block name="priceTypeBlock" datasource="priceTypeDataSource" restrictInsert="y">
241          <entry name="priceTypeIdEntry" field="price_type.id" hidden="" x="1" y="1" width="20" />          <entry name="priceTypeIdEntry" field="price_type.id" hidden="" x="1" y="1" width="20" />
242          <label text="Nombre de la Lista de Precios"          <label text="Nombre de la Lista de Precios"
243            x="1" y="1"/>            x="1" y="1"/>
244          <entry name="nameEntry" field="_price_type_data.name"          <entry name="nameEntry" field="_price_type_data.name"
245            x="1" y="2" width="40"/>            x="1" y="2" width="40"/>
   
 <!--         <label text="lista activa" -->  
 <!--           x="1" y="3"/> -->  
246          <entry name="isActiveEntry" field="_price_type_data.is_active" x="1" y="4" width="1" default="S" hidden="" />          <entry name="isActiveEntry" field="_price_type_data.is_active" x="1" y="4" width="1" default="S" hidden="" />
247          <label text="Esta lista esta basada en la lista ..."          <label text="Esta lista esta basada en la lista ..."
248            x="1" y="5"/>            x="1" y="5"/>
249          <entry x="1" y="6" field="_price_type_data.parent"          <entry x="1" y="6" field="_price_type_data.parent"
250            name="parentPriceTypeEntry"            name="parentPriceTypeEntry" hidden="y"/>
251            width="35" style="dropdown" foreign_key="parentPriceTypeDataSource._table"          <button x="37" y="6" width="10" trigger="callPriceTypeTrigger"
252            foreign_key_description="name">            label="Buscar" name="priceTypeBtn" height="1">
253            <trigger type="PRE-FOCUSOUT" name="fo">            <!-- new_schema_begin -->
254              if str(priceTypeBlock.priceTypeIdEntry) == "1":            <trigger type="NAMED" name="callPriceTypeTrigger">
255                priceTypeBlock.processRollback(1)              print 'callPriceTypeTrigger'
256                if str(priceTypeBlock.priceTypeIdEntry)=='1':
257                  form.genericBox ('La lista de precios base no puede estar basada en ninguna otra', [ 'Ok' ])
258                  showPriceTypeNameBlock.priceTypeNameEntry= ''
259                else:
260                  def setPriceType (recNo):
261                    if recNo>=0:
262                      searchingPriceTypeBlock.jumpRecord (recNo)
263                      priceTypeBlock.parentPriceTypeEntry=       str(searchingPriceTypeBlock.idEntry)
264                      showPriceTypeNameBlock.priceTypeNameEntry= str(searchingPriceTypeBlock.nameEntry)
265    
266                  # look for the name...
267                  searchingPriceTypeBlock.processRollback ()
268                  searchingPriceTypeBlock.initQuery ()
269                  searchingPriceTypeBlock.nameEntry= str(showPriceTypeNameBlock.priceTypeNameEntry)+'%'
270                  searchingPriceTypeBlock.processQuery ()
271    
272                  # are there too much results?
273                  resultCount= searchingPriceTypeBlock.getRecordCount ()
274                  if resultCount>1:
275                    # do the select-man
276                    runForm ('priceTypeSelect.gfd', {
277                      'data': searchingPriceTypeBlock,
278                      'callback': setPriceType
279                    })
280                  elif resultCount==1:
281                    setPriceType (0)
282            </trigger>            </trigger>
283          </entry>            <!-- new_schema_end -->
284            </button>
285          <button x="1" y="17" trigger="commitTrigger" width="9" label="Aceptar"          <button x="1" y="17" trigger="commitTrigger" width="9" label="Aceptar"
286                  name="priceTypeCommitBtn" height="1"/>                  name="priceTypeCommitBtn" height="1"/>
287          <button x="11" y="17" trigger="priceTypeDeleteTrigger" width="9" label="Borrar"          <button x="11" y="17" trigger="priceTypeDeleteTrigger" width="9" label="Borrar"
# Line 210  Line 289 
289          <button x="21" y="17" trigger="priceTypeRollbackTrigger" width="9" label="Cancelar"          <button x="21" y="17" trigger="priceTypeRollbackTrigger" width="9" label="Cancelar"
290                  name="priceTypeRollbackBtn" height="1"/>                  name="priceTypeRollbackBtn" height="1"/>
291    
292       </block>        </block>
293    
294          <!-- new_schema_begin -->
295          <datasource name="showNames" cache="1"/>
296          <block name="showPriceTypeNameBlock" datasource="showNames">
297            <entry name="priceTypeNameEntry" field="priceTypeName"
298              x="1" y="6" width="35"/>
299          </block>
300          <!-- new_schema_end -->
301     </box>     </box>
302    
303    </page>    </page>
# Line 229  Line 316 
316   <datasource name="searchProductByNameDataSource" cache="1"/>   <datasource name="searchProductByNameDataSource" cache="1"/>
317   <datasource name="searchProductByCodeDataSource" cache="1"/>   <datasource name="searchProductByCodeDataSource" cache="1"/>
318      <trigger name="searchProductTrigger" type="NAMED">      <trigger name="searchProductTrigger" type="NAMED">
319          print 'searchProductTrigger'
320        #armado de la lista de recorrido del arbol        #armado de la lista de recorrido del arbol
321        search_id = str(pricePriceTypeBlock.priceTypeId)        search_id = str(pricePriceTypeBlock.priceTypeId)
322        priceListsChain=[]        priceListsChain=[]
323        while search_id != "" :        while search_id != "" :
324            treePriceTypeBlock.initQuery()            treePriceTypeBlock.initQuery()
325            treePriceTypeBlock.treePriceTypeId = search_id                                    treePriceTypeBlock.treePriceTypeId = search_id
326            treePriceTypeBlock.processQuery()            treePriceTypeBlock.processQuery()
327            search_id = str(treePriceTypeBlock.treePriceTypeParentId)            search_id = str(treePriceTypeBlock.treePriceTypeParentId)
328            priceListsChain.append("%s" % treePriceTypeBlock.treePriceTypeId)            priceListsChain.append("%s" % treePriceTypeBlock.treePriceTypeId)
# Line 266  Line 354 
354            resultProductBlock.nextRecord()            resultProductBlock.nextRecord()
355      </trigger>      </trigger>
356      <trigger name="priceModifyCommitTrigger" type="NAMED">      <trigger name="priceModifyCommitTrigger" type="NAMED">
357          print 'priceModifyCommitTrigger'
358        priceModifyBlock.firstRecord()        priceModifyBlock.firstRecord()
359        for index in range(priceModifyBlock.getRecordCount()):        for index in range(priceModifyBlock.getRecordCount()):
360           if ("%s" % priceModifyBlock.priceModifyPriceListEntry) != ("%s" % priceModifyBlock.priceModifyPricePreviousListEntry):           if ("%s" % priceModifyBlock.priceModifyPriceListEntry) != ("%s" % priceModifyBlock.priceModifyPricePreviousListEntry):
# Line 292  Line 381 
381        callTrigger('searchProductTrigger')        callTrigger('searchProductTrigger')
382     </trigger>     </trigger>
383      <trigger name="priceModifyRollbackTrigger" type="NAMED">      <trigger name="priceModifyRollbackTrigger" type="NAMED">
384            print 'priceModifyRollbackTrigger'
385          priceCommitDataBlock.processRollback()          priceCommitDataBlock.processRollback()
386          priceModifyBlock.processRollback()          priceModifyBlock.processRollback()
387      </trigger>      </trigger>
# Line 317  Line 407 
407          <button x="47" y="2" width="5" trigger="callProductTrigger"          <button x="47" y="2" width="5" trigger="callProductTrigger"
408            label=" ... " name="priceTypeBtn" height="1">            label=" ... " name="priceTypeBtn" height="1">
409           <trigger type="NAMED" name="callProductTrigger">           <trigger type="NAMED" name="callProductTrigger">
410               print 'callProductTrigger'
411             #runForm('priceType-new.gfd', {'initId': str(clientBlock.priceTypeEntry)})             #runForm('priceType-new.gfd', {'initId': str(clientBlock.priceTypeEntry)})
412             runForm('product.gfd')             runForm('product.gfd')
413           </trigger>           </trigger>

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

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