commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue-contrib] r280 - in address: forms schema


From: reinhard
Subject: [gnue-contrib] r280 - in address: forms schema
Date: Sun, 21 Oct 2007 10:25:39 -0500 (CDT)

Author: reinhard
Date: 2007-10-21 10:25:39 -0500 (Sun, 21 Oct 2007)
New Revision: 280

Modified:
   address/forms/address.gfd
   address/schema/schema.gsd
Log:
Added filter fields and csv export.


Modified: address/forms/address.gfd
===================================================================
--- address/forms/address.gfd   2007-07-08 18:49:13 UTC (rev 279)
+++ address/forms/address.gfd   2007-10-21 15:25:39 UTC (rev 280)
@@ -40,6 +40,13 @@
     </condition>
   </datasource>
 
+  <datasource name="dts_csv" connection="address" table="contact left outer 
join company on contact.company = company.id" primarykey="contact.id">
+    <sortorder>
+      <sortfield name="company.name1" ignorecase="Y"/>
+      <sortfield name="contact.surname" ignorecase="Y"/>
+    </sortorder>
+  </datasource>
+
   <!-- ==================================================================== -->
 
   <logic>
@@ -74,6 +81,9 @@
       <field name="eMemoAvailable"                   datatype="boolean" 
editable="N"/>
       <field name="eMemo"        field="memo"        datatype="text"/>
       <field name="eQuicksearch" field="quicksearch" datatype="boolean"/>
+      <field name="eFilter1"     field="filter1"     datatype="boolean"/>
+      <field name="eFilter2"     field="filter2"     datatype="boolean"/>
+      <field name="eFilter3"     field="filter3"     datatype="boolean"/>
       <field name="contact_count"                    datatype="number"  
length="4"  editable="N"/>
 
       <trigger type="ON-RECORDLOADED">
@@ -115,6 +125,9 @@
       <field name="eMail"       field="email"      datatype="text" 
length="64"/>
       <field name="eMemo"       field="memo"       datatype="text"/>
       <field name="eMemoAvailable"                 datatype="boolean" 
editable="N"/>
+      <field name="eFilter1"    field="filter1"    datatype="boolean"/>
+      <field name="eFilter2"    field="filter2"    datatype="boolean"/>
+      <field name="eFilter3"    field="filter3"    datatype="boolean"/>
 
       <trigger type="ON-RECORDLOADED">
         blk_contact.eMemoAvailable.value = (blk_contact.eMemo.value is not 
None and len(blk_contact.eMemo.value.strip()) > 0)
@@ -139,6 +152,30 @@
         </trigger>
       </field>
     </block>
+
+    <block name="blk_csv" datasource="dts_csv">
+      <field name="FA/Firma1" field="company.name1"/>
+      <field name="FA/Firma2" field="company.name2"/>
+      <field name="FA/Straße" field="company.street"/>
+      <field name="FA/PLZ" field="company.zip"/>
+      <field name="FA/Ort" field="company.city"/>
+      <field name="FA/Telefon" field="company.phone"/>
+      <field name="FA/Kategorie" field="company.category"/>
+      <field name="FA/Filter1" field="company.filter1"/>
+      <field name="FA/Filter2" field="company.filter2"/>
+      <field name="FA/Filter3" field="company.filter3"/>
+      <field name="ASP/Anrede" field="contact.salutation" fk_key="id" 
fk_description="text" fk_source="dts_salutation"/>
+      <field name="ASP/Titel" field="contact.title"/>
+      <field name="ASP/Vorname" field="contact.firstname"/>
+      <field name="ASP/Nachname" field="contact.surname"/>
+      <field name="ASP/Abteilung" field="contact.department"/>
+      <field name="ASP/Funktion" field="contact.duty"/>
+      <field name="ASP/Telefon" field="contact.phone1"/>
+      <field name="ASP/Mobil" field="contact.phone2"/>
+      <field name="ASP/Filter1" field="contact.filter1"/>
+      <field name="ASP/Filter2" field="contact.filter2"/>
+      <field name="ASP/Filter3" field="contact.filter3"/>
+    </block>
   </logic>
 
   <!-- ==================================================================== -->
@@ -161,6 +198,7 @@
               <entry field="eCountry"       label="Land:"/>
               <entry field="eVAT"           label="UID:"/>
               <entry field="eCRG"           label="FNr:"/>
+              <entry field="eQuicksearch" label="Schnellaufruf"/>
               <hbox label="Memo:">
                 <entry field="eMemoAvailable"     label="verfügbar"/>
                 <button action="act_memo_company" label="Bearbeiten"/>
@@ -177,7 +215,9 @@
               <entry field="eBWSupplier"  label="BW LiNr:"/>
               <entry field="eShipment"    label="Versandart:"/>
               <entry field="eCategory"    label="Kategorie:"/>
-              <entry field="eQuicksearch" label="Schnellaufruf"/>
+              <entry field="eFilter1"     label="Filter-1"/>
+              <entry field="eFilter2"     label="Filter-2"/>
+              <entry field="eFilter3"     label="Filter-3"/>
             </vbox>
           </hbox>
 
@@ -192,18 +232,21 @@
                 <entry field="eFirstname"  label="Vorname:"/>
                 <entry field="eSurname"    label="Nachname:"/>
                 <entry field="eDepartment" label="Abteilung:"/>
-                <entry field="eDuty"       label="Funktion"/>
+                <entry field="eDuty"       label="Funktion:"/>
+                <hbox label="Memo:">
+                  <entry field="eMemoAvailable" label="verfügbar"/>
+                  <button action="act_memo_contact" label="Bearbeiten"/>
+                </hbox>
               </vbox>
 
               <vbox>
-                <entry field="ePhone1"        label="Telefon 1:"/>
-                <entry field="ePhone2"        label="Telefon 2:"/>
+                <entry field="ePhone1"        label="Telefon:"/>
+                <entry field="ePhone2"        label="Mobil:"/>
                 <entry field="eFax"           label="Fax:"/>
                 <entry field="eMail"          label="E-Mail:"/>
-                <hbox label="Memo:">
-                  <entry field="eMemoAvailable" label="verfügbar"/>
-                  <button action="act_memo_contact" label="Bearbeiten"/>
-                </hbox>
+                <entry field="eFilter1"       label="Filter-1"/>
+                <entry field="eFilter2"       label="Filter-2"/>
+                <entry field="eFilter3"       label="Filter-3"/>
               </vbox>
             </hbox>
             <hbox>
@@ -228,6 +271,7 @@
             <entry block="blk" field="company" label="Schnellaufruf:" 
style="listbox"/>
           </hbox>
           <button action="act_search_phone" label="Telefonnummernsuche"/>
+          <button action="act_export" label="Datenexport"/>
         </vbox>
       </hbox>
     </page>
@@ -277,6 +321,43 @@
         blk_contact.eMemoAvailable.value = bool(value)
   </action>
 
+  <action name="act_export">
+    import wx
+    fname = wx.FileSelector("Daten exportieren", default_extension="txt",
+            wildcard="*.txt", flags=wx.SAVE | wx.OVERWRITE_PROMPT)
+    if not fname:
+        return
+    form.status_message("Daten werden exportiert...")
+    blk_csv.set_filter()
+    from gnue.common.utils import ucsv
+    fieldnames = [
+            u"FA/Firma1",
+            u"FA/Firma2",
+            u"FA/Straße",
+            u"FA/PLZ",
+            u"FA/Ort",
+            u"FA/Telefon",
+            u"FA/Kategorie",
+            u"FA/Filter1",
+            u"FA/Filter2",
+            u"FA/Filter3",
+            u"ASP/Anrede",
+            u"ASP/Titel",
+            u"ASP/Vorname",
+            u"ASP/Nachname",
+            u"ASP/Abteilung",
+            u"ASP/Funktion",
+            u"ASP/Telefon",
+            u"ASP/Mobil",
+            u"ASP/Filter1",
+            u"ASP/Filter2",
+            u"ASP/Filter3"]
+    ucsv.write_file(fieldnames, blk_csv.get_data(fieldnames), fname,
+            dialect="excel-tab", encoding="cp1250")
+    form.status_message("")
+    form.show_message("Datenexport beendet")
+  </action>
+
   <!-- ==================================================================== -->
   <!-- Edit memo                                                            -->
   <!-- ==================================================================== -->

Modified: address/schema/schema.gsd
===================================================================
--- address/schema/schema.gsd   2007-07-08 18:49:13 UTC (rev 279)
+++ address/schema/schema.gsd   2007-10-21 15:25:39 UTC (rev 280)
@@ -26,6 +26,9 @@
         <field name="category"    type="number" length="8"/>
         <field name="memo"        type="string"/>
         <field name="quicksearch" type="boolean"/>
+        <field name="filter1"     type="boolean"/>
+        <field name="filter2"     type="boolean"/>
+        <field name="filter3"     type="boolean"/>
       </fields>
 
       <primarykey name="pk_company">
@@ -56,6 +59,9 @@
         <field name="fax"        type="string" length="40"/>
         <field name="email"      type="string" length="64"/>
         <field name="memo"       type="string"/>
+        <field name="filter1"    type="boolean"/>
+        <field name="filter2"    type="boolean"/>
+        <field name="filter3"    type="boolean"/>
       </fields>
 
       <primarykey name="pk_contact">





reply via email to

[Prev in Thread] Current Thread [Next in Thread]