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

Diff of /papo/forms/provider.gfd

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

revision 1.19 by styxman, Mon Mar 17 16:03:44 2003 UTC revision 1.20 by charlie, Fri Mar 28 20:25:19 2003 UTC
# Line 262  Line 262 
262      </condition>      </condition>
263    </datasource>    </datasource>
264    
265      <datasource name="printProviderDataSource" database="papo"
266                  table="_entity_data, _alien_entity_data, _persona_data, _provider_data, _address_data, entity_type_uid_conf, _entity_uid_data"
267                  order_by="_entity_data.name">
268        <condition>
269          <and>
270            <eq>
271              <cfield name="_entity_data._table"/>
272              <cfield name="_alien_entity_data.entity"/>
273            </eq>
274            <eq>
275              <cfield name="_alien_entity_data._table"/>
276              <cfield name="_persona_data.alien_entity"/>
277            </eq>
278            <eq>
279              <cfield name="_persona_data._table"/>
280              <cfield name="_provider_data.persona"/>
281            </eq>
282            <eq>
283             <cfield name="_entity_data.entity_type"/>
284             <cfield name="entity_type_uid_conf.entity_type"/>
285            </eq>
286            <eq>
287             <cfield name="_entity_uid_data.entity_uid_type"/>
288             <cfield name="entity_type_uid_conf.entity_uid_type"/>
289            </eq>
290            <null>
291              <cfield name="_entity_data._end_t"/>
292            </null>
293            <null>
294              <cfield name="_alien_entity_data._end_t"/>
295            </null>
296            <null>
297              <cfield name="_persona_data._end_t"/>
298            </null>
299            <null>
300              <cfield name="_provider_data._end_t"/>
301            </null>
302            <null>
303              <cfield name="_address_data._end_t"/>
304            </null>
305          </and>
306        </condition>
307      </datasource>
308    
309      <datasource name="printAddressDataSource"
310        database="papo" table="_address_data">
311        <condition>
312        <and>
313          <null>
314            <cfield name="_address_data._end_t"/>
315          </null>
316        </and>
317        </condition>
318      </datasource>
319    
320      <datasource name="pintTelephoneDataSource"
321        database="papo" table="_telephone_data">
322        <condition>
323        <and>
324          <null>
325            <cfield name="_telephone_data._end_t"/>
326          </null>
327        </and>
328        </condition>
329      </datasource>
330    
331    <trigger name="commitTrigger" type="NAMED">    <trigger name="commitTrigger" type="NAMED">
332      isOk= 1      isOk= 1
333      message= ''      message= ''
# Line 347  Line 413 
413    </trigger>    </trigger>
414    
415    <trigger name="printTrigger" type="NAMED"><![CDATA[    <trigger name="printTrigger" type="NAMED"><![CDATA[
416     import tempfile    callTrigger('startWaitingModeTrigger')
417     import os    import gnue.common.GConditions as GConditions
418      import string
419      import hack
420        
421     try:    def printField (field,size,justif='l'):
422         # gnue version <= 0.4        if str(field).strip() == "None":
423         from gnue.forms.GFEvent import GFEvent            field = ""
424     except ImportError:        if justif.lower() == 'l':
425         # gnue version >= 0.5            return str(field).ljust(size)
426         from gnue.common.events.Event import Event as GFEvent        elif justif.lower() == 'r':
427              return str(field).rjust(size)
428          else:
429              return str(field).center(size)
430    
431      def printTitle (field,size):
432          return str(field).center(size)
433    
434        
435     # busy clock    table = []
436     self._object.dispatchEvent(GFEvent('beginWAIT'))    line = "\n\nListado de Provideres\n\n\n"
437     file = tempfile.mktemp('.provider.html')    table.append(line)
438     os.system("grcvs -D file -d %s --filter html ../report/provider.grd" % file)  
439     os.system(gConfig('PrintCommand') % (file))    line = "| " + printTitle("Codigo",14) + " | "
440     os.unlink(file)    line += printTitle("Nombre",20) + " | "
441      line += printTitle("Direccion",20) + " | "
442      line += printTitle("Telefono",20) + " |"
443      lineLen = len(line)
444      table.append(line)
445    
446      line = ""
447      for idx in range(lineLen):
448          line += "-"
449      table.append(line)
450    
451    
452      providerResulSet = printProviderDataSource.createResultSet()
453      more = providerResulSet.firstRecord();
454    
455      while more:
456    
457          addressCondition = GConditions.GCondition()
458          eq = GConditions.GCeq(addressCondition)
459          GConditions.GCField(eq,"_address_data.entity")
460          GConditions.GCConst(eq,str(providerResulSet.current.getField("_entity_data._table")))
461          addressResulSet = printAddressDataSource.createResultSet(addressCondition)
462          anAddress = addressResulSet.firstRecord()
463          addresses = []
464    
465          while anAddress:
466              addresses.append(addressResulSet.current.getField("address"))
467              anAddress = addressResulSet.nextRecord()
468    
469          telephoneCondition = GConditions.GCondition()
470          eq = GConditions.GCeq(telephoneCondition)
471          GConditions.GCField(eq,"_telephone_data.entity")
472          GConditions.GCConst(eq,str(providerResulSet.current.getField("_entity_data._table")))
473          telephoneResulSet = printTelephoneDataSource.createResultSet(telephoneCondition)
474          anTelephone = telephoneResulSet.firstRecord()
475          telephones = []
476    
477          while anTelephone:
478              telephones.append(telephoneResulSet.current.getField("telephone"))
479              anTelephone = telephoneResulSet.nextRecord()
480    
481          line = "| " +printField(providerResulSet.current.getField("_entity_uid_data.uid"),14)+ " | "
482          line += printField(providerResulSet.current.getField("_entity_data.name"),20) + " | "
483          line += printField(addresses.pop(),20) + " | "
484          line += printField(telephones.pop(),20) + " |"
485          table.append(line)
486          
487          while addresses or telephones:
488              line = "| " + printField(" ",14) + " | "
489              line += printField(" ",20) + " | "
490              if addresses:              
491                  line += printField(addresses.pop(),20) + " | "
492              else:
493                  line += printField(" ",20) + " | "
494    
495              if telephones:
496                  line += printField(telephones.pop(),20) + " | "
497              else:
498                  line += printField(" ",20) + " |"
499    
500              table.append(line)
501    
502          more = providerResulSet.nextRecord()
503    
504    
505      callTrigger('endWaitingModeTrigger')
506    
507      hack.previewPrint(table)
508        
509     self._object.dispatchEvent(GFEvent('endWAIT'))    ]]></trigger>
510    
511     ]]></trigger>    <trigger name="startWaitingModeTrigger" type="NAMED"><![CDATA[
512        setStatusText("Procesando ...")
513        try:
514          # gnue version <= 0.4
515          from gnue.forms.GFEvent import GFEvent
516        except ImportError:
517          # gnue version >= 0.5
518          from gnue.common.events.Event import Event as GFEvent
519    
520        # busy clock
521        self._object.dispatchEvent(GFEvent('beginWAIT'))
522      ]]></trigger>
523    
524      <trigger name="endWaitingModeTrigger" type="NAMED"><![CDATA[
525        try:
526          # gnue version <= 0.4
527          from gnue.forms.GFEvent import GFEvent
528        except ImportError:
529          # gnue version >= 0.5
530          from gnue.common.events.Event import Event as GFEvent
531    
532        self._object.dispatchEvent(GFEvent('endWAIT'))
533        setStatusText("Listo")
534      ]]></trigger>
535    
536    <trigger type="NAMED" name="searchTrigger">    <trigger type="NAMED" name="searchTrigger">
537      providerResultBlock.processRollback()      providerResultBlock.processRollback()

Legend:
Removed from v.1.19  
changed lines
  Added in v.1.20

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