> Hi,
>
> I would like Emacs to calculate the price for the travel cost
> (21.90). This should be calculated as sum of the values of the property
> "Price" in the elements of the tree. How do I do that in Emacs Lisp?

I found one way to do it. I defined the COLUMNS property with %Price{+},
i.e. sum numbers in column 'Price and format result with `%.2f'
(always two decimals after point). After that I added the property
'Price' and, while cursor on 'Price',  with `C-c C-c (`org-property-action')' 
and choosing option c
(compute) the value of 'Price' got calculated.

I added the same inline Emacs Lisp expression to the headline to include
the result (21.90) in the headline.

-------8<----------------8<-------------
* Travel cost -- src_emacs-lisp{(org-entry-get (point) "Price")} EUR
  :PROPERTIES:
  :COLUMNS:  %Price{+;%.2f}
  :Price:    21.90
  :END:

** Train Eusirchen -- Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR 
   :PROPERTIES:
   :Price:    7.70
   :END:
** Bus Euskirchen -- Stotzheim, src_emacs-lisp{(org-entry-get (point) "Price")} 
EUR
   :PROPERTIES:
   :Price:    2.40
   :END:

** Taxi Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR
   :PROPERTIES:
   :Price:    11.80
   :END:
-------8<----------------8<-------------

Any ideas on how to improve that solution?


Rainer Hansen <rainer.han...@gmx.net> writes:

>
> ----------------------------------------------
> * Travel cost -- 21.90 EUR
>
> ** Train Eusirchen -- Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} 
> EUR 
>    :PROPERTIES:
>    :Price:    7.70
>    :END:
> ** Bus Euskirchen -- Stotzheim, src_emacs-lisp{(org-entry-get (point) 
> "Price")} EUR
>    :PROPERTIES:
>    :Price:    2.40
>    :END:
>
> ** Taxi Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR
>    :PROPERTIES:
>    :Price:    11.80
>    :END:
> ----------------------------------------------
>
> Thanks!
>
> Rainer


Reply via email to