Myles English <mylesengl...@gmail.com> writes:

> Hi,
>
> Please could tell me where I am going wrong with this?  I just can't get
> the source block to put a result in the table.
>
> #+name: workingDays
> #+BEGIN_SRC emacs-lisp :var hms="0"
> (require 'org-timer)
> (/ (org-timer-hms-to-secs hms) (* 60 60 8))
> #+END_SRC
>
> #+call: workingDays(hms="236:30:00")
>
> #+RESULTS: workingDays(hms="236:30:00")
> : 29
>
> | Days   |     H:M:S |
> |--------+-----------|
> | #ERROR | 236:30:00 |
> #+TBLFM: @2$1='(sbe "workingDays" (hms @2$2))
>

Hi Miles,

To force the value of "236:30:00" to be interpreted as a string (rather
than have sbe try to convert it to a number prefix the reference with a
"$" character).  However even doing this your example exposed a bug in
this sbe functionality to which I've just pushed up a fix.  With the
latest version of Org-mode the attached works as expected.

#+name: workingDays
#+BEGIN_SRC emacs-lisp :var hms="0"
  (require 'org-timer)
  (/ (org-timer-hms-to-secs hms) (* 60 60 8))
#+END_SRC

Note the variable reference is prefixed with a "$" to ensure that it
is interpreted as a string.  See the `sbe' documentation for full
`sbe' usage information.

| Days |     H:M:S |
|------+-----------|
|   29 | 236:30:00 |
#+TBLFM: @2$1='(sbe workingDays (hms $@2$2))
Cheers,

>
>
> Thanks,
>
> Myles
>

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/

Reply via email to