Commit e94d47ca authored by Arnaud Fontaine's avatar Arnaud Fontaine

TioSafe: Archived unused parts to erp5-archive repository (acked by @jp).

erp5_tiosafe_core and ERP5TioSafe/{Conduit,Tool,Document} are used by SlapOS.
Everything else has not be used at all for many years (and Unit Tests have been
disabled for 7 years now).
parent c358a264

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="Folder" module="Products.ERP5Type.Core.Folder"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>accounting</string> </value>
</item>
<item>
<key> <string>id_generator</string> </key>
<value> <string>_generatePerDayId</string> </value>
</item>
<item>
<key> <string>id_group</string> </key>
<value> <string>None</string> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>10</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Site</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value> <string>None</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>accounting</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
SELECT
DISTINCT(account_code) AS identifier,
CONCAT('Reference/', account_code) AS category,
account_name AS title,
CONCAT('<dtml-var getPath>/account_module/', account_code) AS path,
CONCAT('Account ', account_code) AS gid
FROM
NOMACTX
<dtml-if id>
WHERE
<dtml-sqltest id op="eq" column="account_code" type="int">
</dtml-if>
ORDER BY account_code ASC
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_col</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>identifier</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>i</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>7</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>category</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>17</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>title</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>58</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>path</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>59</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>15</int> </value>
</item>
</dictionary>
</list>
</value>
</item>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value> <string>on</string> </value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string>id=""</string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string>TioSafeBrain</string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string>Account</string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>accounting_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>account_module</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Account</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
SELECT
IF (journal_code in ('PI', 'PC'), '', CONCAT('Account ', account_code)) AS source_accounting,
IF (journal_code in ('PI', 'PC'), CONCAT('Account ', account_code), '') AS destination_accounting,
'Currency Euro' AS resource,
IF (journal_code in ('PI', 'PC'), debit - credit, credit - debit) AS quantity,
CONCAT('<dtml-var getPath>/accounting_module/', transaction_reference, ' ', journal_code, ' ', date) AS path,
CONCAT('Accounting ', transaction_reference, ' ', journal_code, ' ', date) AS reference
FROM
NOMACTX
<dtml-if expr="id_accounting or id_account">
WHERE
<dtml-if expr="id_accounting">
CONCAT(transaction_reference, ' ', journal_code, ' ', date) = <dtml-sqlvar type="string" expr="id_accounting">
</dtml-if>
<dtml-if expr="id_accounting and id_account">
AND
</dtml-if>
<dtml-if expr="id_account">
account_code = <dtml-sqlvar type="string" expr="id_account">
</dtml-if>
</dtml-if>
ORDER BY
transaction_reference ASC,
journal_code ASC,
date ASC
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_col</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>source_accounting</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>15</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>destination_accounting</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>15</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>resource</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>13</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>quantity</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>n</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>18</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>path</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>73</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>29</int> </value>
</item>
</dictionary>
</list>
</value>
</item>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string>id_accounting=""\n
id_account=""</string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>accounting_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>accounting_line</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Accounting</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
SELECT
DISTINCT(journal_code) AS type,
transaction_reference AS reference,
IF (journal_code in ('PI', 'PC'), CONCAT('Organisation ', third_party), 'Organisation MyFakeGidOrg') AS source_ownership,
IF (journal_code in ('PI', 'PC'), 'Organisation MyFakeGidOrg', CONCAT('Organisation ', third_party)) AS destination_ownership,
date AS start_date,
date AS stop_date,
CONCAT('Tax Code/', tax_code, '\nJournal/', journal_code) AS category,
CONCAT('<dtml-var getPath>/accounting_module/', transaction_reference, ' ', journal_code, ' ', date) AS path,
CONCAT('Accounting ', transaction_reference, ' ', journal_code, ' ', date) AS gid
FROM
NOMACTX
<dtml-if id>
WHERE
CONCAT(transaction_reference, ' ', journal_code, ' ', date) = <dtml-sqlvar type="string" expr="id">
</dtml-if>
GROUP BY
transaction_reference,
journal_code,
date
ORDER BY
transaction_reference ASC,
journal_code ASC,
date ASC
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_col</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>type</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>2</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>i</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>4</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>source_ownership</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>29</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>destination_ownership</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>29</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>start_date</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>10</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>stop_date</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>10</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>category</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>23</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>path</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>73</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>gid</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>29</int> </value>
</item>
</dictionary>
</list>
</value>
</item>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value> <string>on</string> </value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string>id=""</string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string>TioSafeBrain</string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string>Accounting</string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>accounting_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>accounting_module</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Accounting</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="Connection" module="Products.ZMySQLDA.DA"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>connection_string</string> </key>
<value> <string>accounting root</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>accounting_sql_connection</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>PrestaShop MySQL Database Connection</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
if not id:
return context.account_module()
return context.account_module(id=id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>id="", gid=""</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getAccountList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
if not id:
return context.accounting_module()
return context.accounting_module(id=id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>id="", gid=""</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getAccountingList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
if not id:
return context.organisation_module()
return context.organisation_module(id=id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>id="", gid=""</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getOrganisationList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
SELECT
DISTINCT(third_party) AS title,
CONCAT('<dtml-var getPath>/organisation_module/', third_party) AS path,
CONCAT('Organisation ', third_party) AS gid
FROM
NOMACTX
WHERE
<dtml-if id>
<dtml-sqltest id op="eq" column="third_party" type="string">
AND
</dtml-if>
third_party <> account_code
ORDER BY third_party ASC
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_col</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>title</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>16</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>path</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>73</int> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>name</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>null</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>t</string> </value>
</item>
<item>
<key> <string>width</string> </key>
<value> <int>29</int> </value>
</item>
</dictionary>
</list>
</value>
</item>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value> <string>on</string> </value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string>id=""</string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string>TioSafeBrain</string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string>Organisation</string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>accounting_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>organisation_module</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Organisation</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
Think to modify "accounting_sql_connection" to have a database connection.
Modify the Integration Site Properties "table_prefix", "integration_site_name" and add in the "id_generator" field the value "_generatePerDayId".
\ No newline at end of file
Copyroght (c) 2009 Nexedi SA
\ No newline at end of file
erp5_tiosafe_core
\ No newline at end of file
Hervé Poulain
\ No newline at end of file
portal_integrations/accounting
portal_integrations/accounting/account_module
portal_integrations/accounting/accounting_line
portal_integrations/accounting/accounting_module
portal_integrations/accounting/accounting_sql_connection
portal_integrations/accounting/getAccountList
portal_integrations/accounting/getAccountingList
portal_integrations/accounting/getOrganisationList
portal_integrations/accounting/organisation_module
\ No newline at end of file
erp5_tiosafe_accounting
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>erp5_tiosafe_document</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.DocumentConnector_readDocument(reference=reference, table="Payment Transaction", line_id=payment_transaction_id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>reference, payment_transaction_id=None, **kw</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DocumentConnector_getPaymentTransactionLineList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.DocumentConnector_readDocument(reference=reference, table="Payment Transaction", line_id=payment_transaction_id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>reference, payment_transaction_id=None, **kw</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DocumentConnector_getPaymentTransactionList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.DocumentConnector_readDocument(reference=reference, table="Product", line_id=product_id)
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>reference, product_id=None</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DocumentConnector_getProductList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
parser_dict = parser_dict['object'][1]
data_list = []
for dictionnary in result:
property_dict = {}
for k, v in dictionnary.items():
k = parser_dict.get(k)
if k is not None:
k = k[0]
if same_type(v, ""):
property_dict[k] = unicode(v)
else:
property_dict[k] = v
data_list.append(property_dict)
return data_list
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>result, parser_dict</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DocumentConnector_parseResult</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
# First retrieve the document
portal = context.getPortalObject()
document_list = portal.document_module.searchFolder(
reference=reference,
validation_state="shared",
sort_on=[('version', 'DESC')],
)
if len(document_list) != 1:
raise ValueError, "Impossible to find document with reference %s" %(reference)
document = document_list[0].getObject()
# Then parse it
from Products.ERP5OOo.OOoUtils import OOoParser
parser = OOoParser()
def getIDFromString(string=None):
"""
This function transform a string to a safe and beautiful ID.
It is used here to create a safe category ID from a string.
But the code is not really clever...
"""
if string is None:
return None
clean_id = ''
translation_map = { 'a' : [u'\xe0', u'\xe3']
, 'e' : [u'\xe9', u'\xe8']
, 'i' : [u'\xed']
, 'u' : [u'\xf9']
, '_' : [' ', '+']
, '-' : ['-', u'\u2013']
, 'and': ['&']
}
# Replace odd chars by safe ascii
string = string.lower()
string = string.strip()
for (safe_char, char_list) in translation_map.items():
for char in char_list:
string = string.replace(char, safe_char)
# Exclude all non alphanumeric chars
for char in string:
if char.isalnum() or char in translation_map.keys():
clean_id += char
# Delete leading and trailing char which are not alpha-numerics
# This prevent having IDs with starting underscores
while len(clean_id) > 0 and not clean_id[0].isalnum():
clean_id = clean_id[1:]
while len(clean_id) > 0 and not clean_id[-1].isalnum():
clean_id = clean_id[:-1]
return clean_id
parser.openFromString(str(document.getData()))
# Extract tables from the speadsheet file
filename = parser.getFilename()
spreadsheet_list = parser.getSpreadsheetsMapping(no_empty_lines=True)
spreadsheet_line_list = []
for table_name in spreadsheet_list.keys():
if table_name != table:
continue
sheet = spreadsheet_list[table_name]
if not sheet:
continue
# Get the header of the table
columns_header = sheet[0]
# Get the mapping to help us know the property according a cell index
property_map = {}
column_index = 0
path_index = 0
for column in columns_header:
column_id = getIDFromString(column)
property_map[column_index] = column_id
column_index += 1
# This path_element_list help us to reconstruct the absolute path
if line_id is not None:
line_list = [sheet[int(line_id)-1],]
line_index = int(line_id)
else:
line_list = sheet[1:]
line_index = 2
line_list = line_list[:limit]
for line in line_list:
if id_list and str(line_index) not in id_list:
continue
# Exclude empty lines
if line.count('') + line.count(None) == len(line):
continue
# Prefetch line datas
line_data = {"id" : str(line_index)}
if not id_only:
path_defined = []
for cell_index, cell in enumerate(line):
# Get the property corresponding to the cell data
property_id = property_map[cell_index]
if cell is not None and cell.strip()=='':
# empty string is NOT a valid identifier
cell=None
if not cell:
continue
if line_data.has_key(property_id):
if isinstance(line_data[property_id], str):
cell_value_list = [line_data[property_id], cell]
line_data[property_id] = cell_value_list
else:
line_data[property_id].append(cell)
else:
line_data[property_id] = cell
# Proceed to next cell
cell_index += 1
line_index += 1
spreadsheet_line_list.append(line_data)
return spreadsheet_line_list
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>reference, table, limit, id_only, line_id=None, id_list=None</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DocumentConnector_readDocument</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
"""
Find the list of objects to synchronize by calling the catalog.
Possibly look up a single object based on its ID, GID
"""
payment_transaction_list = []
payment_transaction_append = payment_transaction_list.append
if gid:
return []
if full:
return context.getPortalObject().organisation_module.contentValues()
if not id:
# first get the related integration site
while context_document.getParentValue().getPortalType() != "Synchronization Tool":
context_document = context_document.getParentValue()
site = [x for x in context_document.Base_getRelatedObjectList(portal_type="Integration Module")][0].getParentValue()
context.log("site %s" % site)
# then browse list of stc related to the site one
default_stc = site.getSourceTradeValue()
for document in default_stc.Base_getRelatedObjectList(portal_type="Sale Trade Condition",
validation_state="validated"):
for payment_transaction in document.Base_getRelatedObjectList(portal_type="Payment Transaction",
simulation_state="confirmed"):
transaction = payment_transaction.getObject()
payment_transaction_append(transaction)
else:
# work on defined payment transaction (id is not None)
payment_transaction = getattr(context.accounting_module, id)
if payment_transaction.getSimulationState() != 'confirmed':
payment_transaction_append(payment_transaction)
return payment_transaction_list
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>context_document, full=False, id="", gid=""</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>PaymentTransactionModule_getPaymentTransactionValueList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/xml</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>PaymentTransaction_asTioSafeXML</string> </value>
</item>
<item>
<key> <string>output_encoding</string> </key>
<value> <string>utf-8</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <unicode></unicode> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<transaction xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal"
tal:attributes="type here/getPortalType" tal:define="context_path options/context_document"><tal:block
tal:condition='here/getStartDate'>
<title tal:content="python: here.getTitle()" /></tal:block><tal:block
tal:condition='here/getTitle'>
<start_date tal:content="python: here.getStartDate()" /></tal:block><tal:block
tal:condition='here/getStopDate'>
<stop_date tal:content="python: here.getStopDate()" /></tal:block><tal:block
tal:condition='here/getReference'>
<reference tal:content='here/getReference' /></tal:block><tal:block
tal:condition='here/getPriceCurrencyReference'>
<currency tal:content='here/getPriceCurrencyReference' /></tal:block><tal:block
tal:condition='here/getPaymentMode'>
<payment_mode tal:content='here/getPaymentMode' /></tal:block>
<movement tal:repeat='movement python:here.PaymentTransaction_getLineList(context_path)'><tal:block
tal:condition='movement/price'>
<price tal:content='movement/price'/></tal:block>
</movement>
</transaction>
""" Retrieve the movement list of the transaction. """
movement_list = []
sub = context.restrictedTraverse(context_document)
while sub.getParentValue().getPortalType() != "Synchronization Tool":
sub = sub.getParentValue()
im = sub.Base_getRelatedObjectList(portal_type='Integration Module')[0].getObject()
#prod_module = im.getParentValue().product_module
#prod_pub = prod_module.getSourceSectionValue()
# getter and corresponding property (the order is important)
getter_tuple_list = [
('getTitle', 'title'),
('getReference', 'reference'),
('getSourceDebit', 'debit_price'),
('getSourceCredit', 'price'),
]
# browse the movement list, build the element to sort and movement's data
for movement in context.getMovementList():
movement_dict = {
'title': None,
'reference': None,
'price': None,
}
property_list = []
# browse the main element of the movement
for getter, key in getter_tuple_list:
# XXX-Aurel : maybe there is better way to know if it is a cell
if 'Cell' in movement.getPortalType() and \
getter in ['getTitle', 'getReference']:
value = getattr(movement.getParentValue(), getter)()
else:
value = getattr(movement, getter)()
if value is not None:
if getter == 'getSourceDebit':
value = '%.2f' % value
elif getter == 'getSourceCredit':
value = '%.2f' % value
if value is not None and value != 0:
movement_dict[key] = value
property_list.append(value)
if "price" in movement_dict.keys() and "debit_price" in movement_dict.keys():
movement_dict["price"] = '%.2f' % (float(movement_dict["price"]) - float(movement_dict["debit_price"]))
movement_list.append(movement_dict)
# to not interfer with the sort, set to the end the object
movement_dict['object'] = movement
context.log(movement_dict)
#movement_list.sort()
return movement_list
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>context_document</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>PaymentTransaction_getLineList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.Synchronization_getBrainGIDFromIntegrationSite(object, site_id='28', module_id="product_module")
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Synchronization_getProductBrainGIDFromDemo</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.Synchronization_getERP5ObjectGIDFromIntegrationSite(object, site_id='28', module_id="product_module")
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Synchronization_getProductERP5ObjectGIDFromDemo</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
2011-05-09 aurel
Initial version
\ No newline at end of file
erp5_tiosafe_core
\ No newline at end of file
This is the bt5 which permit to synchronize document in document module using TioSafe
\ No newline at end of file
erp5_tiosafe_document
\ No newline at end of file
erp5_tiosafe_document
\ No newline at end of file
0.1
\ No newline at end of file
##############################################################################
#
# Copyright (c) 2002-2010 Nexedi SA and Contributors. All Rights Reserved.
# Aurelien Calonne <aurel@nexedi.com>
# Mayoro DIAGNE <mayoro@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsibility of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# guarantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
##############################################################################
from App.Extensions import getBrain
from Acquisition import Explicit, aq_base
from lxml import etree
from zLOG import LOG, ERROR, INFO
from base64 import b16encode, b16decode
SEPARATOR = '\n'
NodeBrain = getBrain('TioSafeBrain', 'Node', reload=1)
ResourceBrain = getBrain('TioSafeBrain', 'Resource', reload=1)
TransactionBrain = getBrain('TioSafeBrain', 'Transaction', reload=1)
LastIdBrain = getBrain('TioSafeBrain', 'LastId', reload=1)
class Transaction(TransactionBrain):
"""
This class allows to build the TioSafe XML of a Sale Order and to sync.
"""
__allow_access_to_unprotected_subobjects__ = 1
def __init__(self, object_type, context, **kw):
TransactionBrain.__init__(self, object_type, context, **kw)
self.reference = self.id
def _asXML(self):
transaction = etree.Element('transaction', type="Payment Transaction")
integration_site = self.getIntegrationSite()
# marker for checking property existency
MARKER = object()
# specific value
self.reference = self.id
# list of possible tags for a sale order
tag_list = (
'title', 'start_date', 'stop_date', 'reference', 'currency',
)
self._setTagList(self, transaction, tag_list)
self._setTagList(self, transaction, ['category', ], SEPARATOR)
# order the movement list
movement_list = []
method_id = self.getPortalType().replace(' ', '')
portal_type = self.getPortalType().replace(' ', '_').lower()
module_id = "%s_module" %(portal_type)
module = getattr(integration_site, module_id)
getter_line_method = getattr(
module,
'get%sLineList' % (method_id,),
MARKER,
)
if getter_line_method is not MARKER:
# browse each transaction lines, build the sort element and set data
parameter_kw = {'%s_id' % portal_type: str(self.getId()), }
for line in getter_line_method(**parameter_kw):
key_list = ['title', 'gross_price']
value_list = [getattr(line, x, '') for x in key_list]
movement_dict = {'context': line,}
# set to None the '' value of the list
for k, v in zip(key_list, value_list):
movement_dict[k] = v or None
movement_dict['price'] = movement_dict['gross_price']
movement_list.append(movement_dict)
# the second part build the XML of the transaction
# browse the ordered movement list and build the movement list as a result
# the xml through of the line data in the dict
for movement_dict in movement_list:
movement = etree.SubElement(transaction, 'movement')
# set arrow list on the movement
#if movement_dict.get("context", None) is not None:
# self._setArrowTagList(movement_dict['context'], movement)
# if exist the following tags in the line dict, add them in the xml
tag_list = ('title', 'price')
for tag in tag_list:
if tag in movement_dict:
if movement_dict[tag] is not None:
element = etree.SubElement(movement, tag)
if tag == "price":
element.text = "%.2f" % (float(movement_dict.get(tag, 0.0)),)
else:
element.text = movement_dict[tag]
# add the categories to the movement
for category_value in movement_dict.get('category', []):
category = etree.SubElement(movement, 'category')
category.text = category_value
xml = etree.tostring(transaction, pretty_print=True, encoding='utf-8')
#LOG("asXML returns transaction %s" %(xml,), 300, "")
return xml
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Organisation" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>group/nexedi</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>1</string> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>2</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Organisation</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>My SpreadSheet Company</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Bank Account" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>price_currency/currency_module/euro</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>1</string> </value>
</item>
<item>
<key> <string>overdraft_facility</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Bank Account</string> </value>
</item>
<item>
<key> <string>start_date</string> </key>
<value>
<object>
<klass>
<global id="1.1" name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1304208000.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>stop_date</string> </key>
<value>
<object>
<klass> <reference id="1.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1609372800.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Banque CIC</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Accounting Period" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Delete_objects_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>2</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Accounting Period</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value> <string>2011</string> </value>
</item>
<item>
<key> <string>start_date</string> </key>
<value>
<object>
<klass>
<global id="1.1" name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1293840000.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>stop_date</string> </key>
<value>
<object>
<klass> <reference id="1.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1325289600.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Période Spreadsheet Test</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Address" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>region/france</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>default_address</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Address</string> </value>
</item>
<item>
<key> <string>sid</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Email" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>default_email</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Email</string> </value>
</item>
<item>
<key> <string>sid</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>url_string</string> </key>
<value> <string>mycompany@spreadsheet.fr</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Site" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>price_currency</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>source_payment/organisation_module/1/1</string>
<string>price_currency/currency_module/euro</string>
<string>source_administration/organisation_module/1</string>
<string>source_trade/sale_trade_condition_module/default_cic</string>
<string>source/account_module/1</string>
</tuple>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>spreadsheet_cic</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>cic</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>4</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Site</string> </value>
</item>
<item>
<key> <string>price_currency</string> </key>
<value> <string>currency_module/euro</string> </value>
</item>
<item>
<key> <string>start_date</string> </key>
<value>
<object>
<klass>
<global id="1.1" name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1293840000.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>stop_date</string> </key>
<value>
<object>
<klass> <reference id="1.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1325289600.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Spreadsheet CIC</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Service Connector" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>document_connector</string> </value>
</item>
<item>
<key> <string>parser_method_id</string> </key>
<value> <string>DocumentConnector_parseResult</string> </value>
</item>
<item>
<key> <string>password</string> </key>
<value> <string>tiosafe_sync_user</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Service Connector</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>CIC Document Connector</string> </value>
</item>
<item>
<key> <string>transport</string> </key>
<value> <string>document</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value> <string>CIC20110812-001</string> </value>
</item>
<item>
<key> <string>user_id</string> </key>
<value> <string>tiosafe_sync_user</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Base Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>payment_transaction_line_mapping</string> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>6</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Base Property Mapping</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Spreadsheet Payment Transaction Line Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>id</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>id</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>1</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>title</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>title</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>2</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>reference</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>3</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>gross_price</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>debit</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>5</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>gross_price</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>credit</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>6</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Base Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>payment_transaction_mapping</string> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>4</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Base Property Mapping</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Spreadsheet Payment Transaction Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>id</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>id</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>1</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>start_date</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>date_doperation</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>2</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>stop_date</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>date_de_valeur</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>3</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Property Mapping" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>title</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>libelle</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>4</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Property Mapping</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Integration Module" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>destination_section/portal_synchronizations/spreadsheet_cic_payment_transaction_sub</string>
<string>source_section/portal_synchronizations/spreadsheet_cic_payment_transaction_pub</string>
</tuple>
</value>
</item>
<item>
<key> <string>gid_property</string> </key>
<value>
<tuple>
<string>title</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>payment_transaction_module</string> </value>
</item>
<item>
<key> <string>int_index</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>99</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Integration Module</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Service Request" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>brain_builder_script</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>brain_class_file</string> </key>
<value> <string>CicBrain</string> </value>
</item>
<item>
<key> <string>brain_class_name</string> </key>
<value> <string>Transaction</string> </value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>source/portal_integrations/cic/document_connector</string>
<string>destination/portal_integrations/cic/payment_transaction_mapping</string>
</tuple>
</value>
</item>
<item>
<key> <string>data</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>getPaymentTransactionList</string> </value>
</item>
<item>
<key> <string>destination_object_type</string> </key>
<value> <string>Payment Transaction</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getObjectList</string> </value>
</item>
<item>
<key> <string>last_request_error</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>last_request_parameter</string> </key>
<value> <string>args = [], kw = {\'date_doperation\': DateTime(\'2011/01/01\'), \'date_de_valeur\': DateTime(\'2011/12/31\')}</string> </value>
</item>
<item>
<key> <string>last_request_path</string> </key>
<value> <string>erp5/DocumentConnector_getPaymentTransactionList</string> </value>
</item>
<item>
<key> <string>last_request_result</string> </key>
<value> <string>[{u\'solde\': \'81278.78\', u\'libelle\': \'VIR FRAIS ROBERT\', u\'debit\': \'-157.50\', u\'date_doperation\': \'06/13/2011\', u\'date_de_valeur\': \'06/13/2011\', \'id\': \'2\'}, {u\'solde\': \'81235.55\', u\'libelle\': \'VIR POSTE\', u\'debit\': \'-73.03\', u\'date_doperation\': \'06/13/2011\', u\'date_de_valeur\': \'06/13/2011\', \'id\': \'3\'}, {u\'solde\': \'81200.74\', u\'libelle\': \'PRLV FREE TELECOM FREE HAUTDEBIT\', u\'debit\': \'-46.78\', u\'date_doperation\': \'06/14/2011\', u\'date_de_valeur\': \'06/14/2011\', \'id\': \'4\'}, {u\'solde\': \'44437.67\', u\'libelle\': \'VIR SOCIETE X 2011\', u\'credit\': \'2090\', u\'date_doperation\': \'06/16/2011\', u\'date_de_valeur\': \'06/16/2011\', \'id\': \'5\'}]</string> </value>
</item>
<item>
<key> <string>last_request_tiosafe_xml_result</string> </key>
<value> <string encoding="cdata"><![CDATA[
<transaction type="Payment Transaction">\n
<title>VIR FRAIS ROBERT</title>\n
<start_date>2011/06/13</start_date>\n
<stop_date>2011/06/13</stop_date>\n
<reference>2</reference>\n
<movement>\n
<price>-157.50</price>\n
</movement>\n
</transaction>\n
\n
<transaction type="Payment Transaction">\n
<title>VIR POSTE</title>\n
<start_date>2011/06/13</start_date>\n
<stop_date>2011/06/13</stop_date>\n
<reference>3</reference>\n
<movement>\n
<price>-73.03</price>\n
</movement>\n
</transaction>\n
\n
<transaction type="Payment Transaction">\n
<title>PRLV FREE TELECOM FREE HAUTDEBIT</title>\n
<start_date>2011/06/14</start_date>\n
<stop_date>2011/06/14</stop_date>\n
<reference>4</reference>\n
<movement>\n
<price>-46.78</price>\n
</movement>\n
</transaction>\n
\n
<transaction type="Payment Transaction">\n
<title>VIR SOCIETE X 2011</title>\n
<start_date>2011/06/16</start_date>\n
<stop_date>2011/06/16</stop_date>\n
<reference>5</reference>\n
<movement>\n
<price>2090.00</price>\n
</movement>\n
</transaction>\n
]]></string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Service Request</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>getObjectList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Service Request" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>brain_class_file</string> </key>
<value> <string>TioSafeBrain</string> </value>
</item>
<item>
<key> <string>brain_class_name</string> </key>
<value> <string>TioSafeBrain</string> </value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>source/portal_integrations/cic/document_connector</string>
<string>destination/portal_integrations/cic/payment_transaction_line_mapping</string>
</tuple>
</value>
</item>
<item>
<key> <string>data</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>getPaymentTransactionLineList</string> </value>
</item>
<item>
<key> <string>destination_object_type</string> </key>
<value> <string>Accounting Transaction Line</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>getPaymentTransactionLineList</string> </value>
</item>
<item>
<key> <string>last_request_error</string> </key>
<value> <string encoding="cdata"><![CDATA[
<exceptions.NotImplementedError instance at 0xf01238c>
]]></string> </value>
</item>
<item>
<key> <string>last_request_parameter</string> </key>
<value> <string>args = [], kw = {\'stop_date\': DateTime(\'2011/12/31\'), \'start_date\': DateTime(\'2011/01/01\')}</string> </value>
</item>
<item>
<key> <string>last_request_path</string> </key>
<value> <string>erp5/DocumentConnector_getPaymentTransactionLineList</string> </value>
</item>
<item>
<key> <string>last_request_result</string> </key>
<value> <string>[{u\'solde\': \'81278.78\', u\'libelle\': \'VIR FRAIS ROBERT\', u\'debit\': \'-157.50\', u\'date_doperation\': \'06/13/2011\', u\'date_de_valeur\': \'06/13/2011\', \'id\': \'2\'}, {u\'solde\': \'81235.55\', u\'libelle\': \'VIR POSTE\', u\'debit\': \'-73.03\', u\'date_doperation\': \'06/13/2011\', u\'date_de_valeur\': \'06/13/2011\', \'id\': \'3\'}, {u\'solde\': \'81200.74\', u\'libelle\': \'PRLV FREE TELECOM FREE HAUTDEBIT\', u\'debit\': \'-46.78\', u\'date_doperation\': \'06/14/2011\', u\'date_de_valeur\': \'06/14/2011\', \'id\': \'4\'}, {u\'solde\': \'44437.67\', u\'libelle\': \'VIR SOCIETE X 2011\', u\'credit\': \'2090\', u\'date_doperation\': \'06/16/2011\', u\'date_de_valeur\': \'06/16/2011\', \'id\': \'5\'}]</string> </value>
</item>
<item>
<key> <string>last_request_tiosafe_xml_result</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Service Request</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Get Payment Transaction Line List</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SyncML Publication" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Delete_objects_Permission</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>authentification_format</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>authentification_type</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>authentification_format</string> </key>
<value> <string>b64</string> </value>
</item>
<item>
<key> <string>authentification_type</string> </key>
<value> <string>syncml:auth-basic</string> </value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>source/accounting_module</string>
</tuple>
</value>
</item>
<item>
<key> <string>conduit_module_id</string> </key>
<value> <string>Products.ERP5TioSafe.Conduit.ERP5PaymentTransactionConduit</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/vnd.syncml+xml</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>spreadsheet_payment_transaction_synchronization</string> </value>
</item>
<item>
<key> <string>gid_generator_method_id</string> </key>
<value> <string>Synchronization_getPaymentTransactionERP5ObjectGIDFromCIC</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>spreadsheet_cic_payment_transaction_pub</string> </value>
</item>
<item>
<key> <string>is_activity_enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>is_synchronized_with_erp5_portal</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>last_id</string> </key>
<value> <string>34</string> </value>
</item>
<item>
<key> <string>list_method_id</string> </key>
<value> <string>PaymentTransactionModule_getPaymentTransactionValueList</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>SyncML Publication</string> </value>
</item>
<item>
<key> <string>synchronization_id_generator_method_id</string> </key>
<value> <string>generateNewId</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>spreadsheet_payment_transaction_pub_synchronization</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value> <string>http://localhost:9090/erp5</string> </value>
</item>
<item>
<key> <string>xml_binding_generator_method_id</string> </key>
<value> <string>PaymentTransaction_asTioSafeXML</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SyncML Subscription" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_count</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>sync_ml_alert_code</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>zope_user</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>remaining_object_path_list</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>lines</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key> <string>_mt_index</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_tree</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>authentication_format</string> </key>
<value> <string>b64</string> </value>
</item>
<item>
<key> <string>authentication_type</string> </key>
<value> <string>syncml:auth-basic</string> </value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>syncml_alert_code/two_way</string>
<string>source/portal_integrations/cic/payment_transaction_module</string>
</tuple>
</value>
</item>
<item>
<key> <string>conduit_module_id</string> </key>
<value> <string>Extensions.TioSafeDoNothingConduit</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/vnd.syncml+xml</string> </value>
</item>
<item>
<key> <string>default_destination_reference</string> </key>
<value> <string>spreadsheet_payment_transaction_synchronization</string> </value>
</item>
<item>
<key> <string>default_source_reference</string> </key>
<value> <string>spreadsheet_payment_transaction_synchronization_sub</string> </value>
</item>
<item>
<key> <string>gid_generator_method_id</string> </key>
<value> <string>Synchronization_getPaymentTransactionBrainGIDFromCIC</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>spreadsheet_cic_payment_transaction_sub</string> </value>
</item>
<item>
<key> <string>is_activity_enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>is_synchronized_with_erp5_portal</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>last_anchor</string> </key>
<value>
<object>
<klass>
<global id="1.1" name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1315604261.85</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>last_message_id</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>last_sent_message</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>list_method_id</string> </key>
<value> <string>getObjectList</string> </value>
</item>
<item>
<key> <string>message_id</string> </key>
<value> <int>4</int> </value>
</item>
<item>
<key> <string>next_anchor</string> </key>
<value>
<object>
<klass> <reference id="1.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1315606420.76</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>password</string> </key>
<value> <string>tiosafe_sync_user</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>SyncML Subscription</string> </value>
</item>
<item>
<key> <string>remaining_object_path_list</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>session_id</string> </key>
<value> <int>92</int> </value>
</item>
<item>
<key> <string>subscription_url_string</string> </key>
<value> <string>http://localhost:9090/erp5</string> </value>
</item>
<item>
<key> <string>sync_ml_alert_code</string> </key>
<value> <string>two_way</string> </value>
</item>
<item>
<key> <string>synchronization_id_generator_method_id</string> </key>
<value> <string>generateNewId</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>spreadsheet_payment_transaction_sub_synchronization</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value> <string>http://localhost:9090/erp5</string> </value>
</item>
<item>
<key> <string>user_id</string> </key>
<value> <string>tiosafe_sync_user</string> </value>
</item>
<item>
<key> <string>xml_binding_generator_method_id</string> </key>
<value> <string>asXML</string> </value>
</item>
<item>
<key> <string>zope_user</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="OOBTree" module="BTrees.OOBTree"/>
</pickle>
<pickle>
<none/>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Sale Trade Condition" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Author</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Author</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Author</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Author</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_identity_criterion</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>_range_criterion</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>destination_administration/organisation_module/57</string>
<string>source_section/organisation_module/genesis</string>
<string>source/organisation_module/genesis</string>
<string>source_decision/organisation_module/genesis</string>
<string>specialise/sale_trade_condition_module/default_tiosafe</string>
</tuple>
</value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>tiosafe_default_cic</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>default_cic</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Sale Trade Condition</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Default CIC Sale Trade Condition</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>0.1</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>erp5_tiosafe_document_cic</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.Synchronization_getBrainGIDFromIntegrationSite(object, site_id='cic', module_id="payment_transaction_module")
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Synchronization_getPaymentTransactionBrainGIDFromCIC</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
return context.Synchronization_getERP5ObjectGIDFromIntegrationSite(object, site_id='cic', module_id="payment_transaction_module")
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>object</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Synchronization_getPaymentTransactionERP5ObjectGIDFromCIC</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
# country property is used in gid computation of organisation
# transform it to category as soon as possible
brain_list = [brain(context=context,
object_type=context.getDestinationObjectType(),
**parameter_dict),]
return brain_list
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>parameter_dict, brain</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>WebServiceRequest_buildSpreadsheetPaymentTransactionBrain</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
2011-09-07 mayoro
- initial version
\ No newline at end of file
erp5_tiosafe_document
\ No newline at end of file
Configuration of the integration site for synchronising SpreadSheet from CIC Bank
\ No newline at end of file
Mayoro DIAGNE
\ No newline at end of file
document_module/1**
organisation_module/1**
portal_integrations/cic
portal_integrations/cic/*connector**
portal_integrations/cic/*mapping**
portal_integrations/cic/*module**
portal_synchronizations/spreadsheet_cic*
sale_trade_condition_module/default_cic**
\ No newline at end of file
erp5_tiosafe_document_cic
\ No newline at end of file
erp5_tiosafe_document_cic
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment