<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[用wizard导入excel数据]]></title><description><![CDATA[<p dir="auto">作为一个quick note吧。<br />OE里的csv导入数据功能形同摆设，通俗地说就是弱爆了。<br />今天尝试一下用excel文件来导入数据。<br /><br />在python里读取excel格式的lib很多，这里我选用的是xlrd。<br />上代码先：<br /><br /></p>
<pre><code>&lt;br /&gt;# -*- coding: utf-8 -*-&lt;br /&gt;&lt;br /&gt;from osv import osv, fields&lt;br /&gt;import time, xlrd, base64&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class bank_bill_import(osv.osv_memory):&lt;br /&gt;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; _name = &amp;quot;fg_account.bank_bill.import.wizard&amp;quot;&lt;br /&gt;&amp;nbsp; &amp;nbsp; _description = &amp;quot;导入账单&amp;quot;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; _columns = {&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;#039;excel&amp;#039;: fields.binary(&amp;#039;excel文件&amp;#039;, filters=&amp;#039;*.xls&amp;#039;),&lt;br /&gt;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; def import_bill(self, cr, uid, ids, context=None):&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for wiz in self.browse(cr,uid,ids):&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if not wiz.excel: continue&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; excel = xlrd.open_workbook(file_contents=base64.decodestring(wiz.excel))&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; sh = excel.sheet_by_index(0)&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; print sh.name, sh.nrows, sh.ncols&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for rx in range(sh.nrows):&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for ry in range(sh.ncols):&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; print sh.cell(rx, ry).value&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; #这里做爱做的事情&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return {&amp;#039;type&amp;#039;: &amp;#039;ir.actions.act_window_close&amp;#039;}&lt;br /&gt;
</code></pre>
<p dir="auto"><br /><br /><br />其实重点就在于：<br /></p>
<pre><code>excel = xlrd.open_workbook(file_contents=base64.decodestring(wiz.excel))
</code></pre>
<br />]]></description><link>https://odoo.net.cn/topic/1626/用wizard导入excel数据</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Apr 2026 11:21:44 GMT</lastBuildDate><atom:link href="https://odoo.net.cn/topic/1626.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 25 May 2012 07:45:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 用wizard导入excel数据 on Fri, 01 Jun 2012 14:08:21 GMT]]></title><description><![CDATA[<p dir="auto">回楼上的 就是一个wizard..</p>
]]></description><link>https://odoo.net.cn/post/11934</link><guid isPermaLink="true">https://odoo.net.cn/post/11934</guid><dc:creator><![CDATA[Joshua]]></dc:creator><pubDate>Fri, 01 Jun 2012 14:08:21 GMT</pubDate></item><item><title><![CDATA[Reply to 用wizard导入excel数据 on Fri, 01 Jun 2012 13:24:30 GMT]]></title><description><![CDATA[<p dir="auto">这代码写在那里呢？</p>
]]></description><link>https://odoo.net.cn/post/11932</link><guid isPermaLink="true">https://odoo.net.cn/post/11932</guid><dc:creator><![CDATA[pingwe]]></dc:creator><pubDate>Fri, 01 Jun 2012 13:24:30 GMT</pubDate></item><item><title><![CDATA[Reply to 用wizard导入excel数据 on Sun, 27 May 2012 04:07:36 GMT]]></title><description><![CDATA[<p dir="auto">Good 多谢分享....</p>
]]></description><link>https://odoo.net.cn/post/11897</link><guid isPermaLink="true">https://odoo.net.cn/post/11897</guid><dc:creator><![CDATA[mrshelly]]></dc:creator><pubDate>Sun, 27 May 2012 04:07:36 GMT</pubDate></item></channel></rss>