Jekyll2021-12-28T10:15:11-03:00http://mijail.ar/feed.xmlMijail TodorovichPersonal blogMijail TodorovichDebugging Odoo compute fields with `ir.logging`2021-12-15T00:00:00-03:002021-12-15T00:00:00-03:00http://mijail.ar/blog/tips/computed-field-ir-logging<p>I was trying determine why a computed field wasn’t working as expected and was really annoyed at the fact that <code class="language-plaintext highlighter-rouge">log</code> isn’t available on that context.
We can create a record on the <code class="language-plaintext highlighter-rouge">ir.logging</code> table, though.</p>
<p>(Tested on V13)</p>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">logging</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">env</span><span class="p">[</span><span class="s">'ir.logging'</span><span class="p">]</span>
<span class="k">def</span> <span class="nf">log</span><span class="p">(</span><span class="n">msg</span><span class="p">,</span> <span class="n">logging</span><span class="o">=</span><span class="n">logging</span><span class="p">):</span>
<span class="n">logging</span><span class="p">.</span><span class="n">create</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span>
<span class="nb">type</span><span class="o">=</span><span class="s">'client'</span><span class="p">,</span>
<span class="n">name</span><span class="o">=</span><span class="s">'my_compute_field'</span><span class="p">,</span>
<span class="n">path</span><span class="o">=</span><span class="s">'n/a'</span><span class="p">,</span>
<span class="n">line</span><span class="o">=</span><span class="s">'n/a'</span><span class="p">,</span>
<span class="n">func</span><span class="o">=</span><span class="s">'n/a'</span><span class="p">,</span>
<span class="n">message</span><span class="o">=</span><span class="nb">str</span><span class="p">(</span><span class="n">msg</span><span class="p">)</span>
<span class="p">))</span>
<span class="k">for</span> <span class="n">rec</span> <span class="ow">in</span> <span class="n">records</span><span class="p">:</span>
<span class="c1"># [...]
</span>
<span class="n">log</span><span class="p">(</span><span class="s">"Hello from the computed field"</span><span class="p">)</span>
<span class="c1"># [...]
</span>
<span class="n">log</span><span class="p">(</span><span class="n">rec</span><span class="p">.</span><span class="n">value</span><span class="p">)</span>
<span class="c1"># [...]
</span></code></pre></div></div>Mijail TodorovichI was trying determine why a computed field wasn’t working as expected and was really annoyed at the fact that log isn’t available on that context. We can create a record on the ir.logging table, though.Electrostatics simulation with WASM2021-02-09T00:00:00-03:002021-02-09T00:00:00-03:00http://mijail.ar/blog/projects/electrostatics-simulation-with-WASM<p><a href="/electrostatics"><img src="/assets/images/posts/electrostatics.png" alt="Screenshot" /></a></p>
<p>Old unfinished project which aimed to create a modern replacement to <em>Calculating Electromagnetic Fields and
Potentials using Poisson’s Equation</em> by Jarek Tuszynski. I wanted to allow the user to draw arbitrary electrodes at given voltages and simulate the electric potential and electric field.</p>
<p>I finished the simulation but never got arround to the drawing part so it only has two scenarios.</p>
<p><a href="/electrostatics" class="btn btn--info"><i class="fas fa-play"></i> Simulation</a> <a href="https://github.com/tmijail/electrostatics" class="btn btn--primary"><i class="fab fa-github"></i> Code</a></p>Mijail TodorovichIn-browser simulation of electric potential and field generated by 2D electrodes using Emscripten.