mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-28 21:02:04 +03:00
ec56c45c6b
[ci skip]
136 lines
3.1 KiB
Plaintext
136 lines
3.1 KiB
Plaintext
# 1. a timeclock session is parsed as a similarly-named transaction with one virtual posting
|
|
hledger -f - print
|
|
<<<
|
|
i 2009/1/1 08:00:00
|
|
o 2009/1/1 09:00:00 stuff on checkout record is ignored
|
|
|
|
i 2009/1/2 08:00:00 account name
|
|
o 2009/1/2 09:00:00
|
|
i 2009/1/3 08:00:00 some:account name and a description
|
|
o 2009/1/3 09:00:00
|
|
>>>
|
|
2009/01/01 * 08:00-09:00
|
|
() 1.00h
|
|
|
|
2009/01/02 * 08:00-09:00
|
|
(account name) 1.00h
|
|
|
|
2009/01/03 * and a description
|
|
(some:account name) 1.00h
|
|
|
|
>>>2
|
|
>>>= 0
|
|
|
|
## TODO
|
|
## 2. multi-day sessions get a new transaction for each day
|
|
#hledger -f- print
|
|
#<<<
|
|
#i 2017/04/20 09:00:00 A
|
|
#o 2017/04/20 17:00:00
|
|
#i 2017/04/21 09:00:00 B
|
|
#o 2017/04/21 17:00:00
|
|
#i 2017/04/22 09:00:00 C
|
|
#o 2017/04/22 17:00:00
|
|
#>>>
|
|
#>>>2
|
|
#>>>=
|
|
#
|
|
## 3. unclosed sessions are automatically closed at report time
|
|
## TODO this output looks wrong
|
|
#hledger -f- print
|
|
#<<<
|
|
#i 2017/04/20 09:00:00 A
|
|
#o 2017/04/20 17:00:00
|
|
#i 2017/04/21 09:00:00 B
|
|
#o 2017/04/21 17:00:00
|
|
#i 2017/04/22 09:00:00 C
|
|
#o 2017/04/22 17:00:00
|
|
#>>>
|
|
#2017/04/20 * 09:00-17:00
|
|
# (A) 8.00h
|
|
#
|
|
#2017/04/21 * 09:00-23:59
|
|
# (B) 15.00h
|
|
#
|
|
#2017/04/22 * 00:00-09:00
|
|
# (B) 9.00h
|
|
#
|
|
#2017/04/22 * 17:00-23:59
|
|
# () 7.00h
|
|
#
|
|
#2017/04/23 * 00:00-23:59
|
|
# () 24.00h
|
|
#
|
|
#2017/04/24 * 00:00-23:59
|
|
# () 24.00h
|
|
#
|
|
#2017/04/25 * 00:00-11:28
|
|
# () 11.47h
|
|
#
|
|
#>>>2
|
|
#>>>=
|
|
|
|
# 4.
|
|
|
|
# ledger timeclock example from #ledger
|
|
# ==== consulting.timeclock
|
|
# ; Time log for consulting sideline
|
|
# ; All times UTC
|
|
# i 2011/01/26 16:00:00 XXXX:Remote "IPMI Access"
|
|
# o 2011/01/26 16:15:00
|
|
|
|
# i 2011/01/26 17:45:00 XXXX:Onsite "Fix opty server"
|
|
# o 2011/01/26 20:00:00
|
|
|
|
# i 2011/01/27 18:00:00 XXXX:Remote "SSL certificate for www.YYYY.com"
|
|
# o 2011/01/27 18:15:00
|
|
|
|
# ; vim:ts=2 sw=2 sts=2 et ft=ledger fdm=manual:
|
|
# ==== consulting.dat
|
|
# ; Ledger for Consulting sideline
|
|
|
|
# !account Consulting
|
|
# !include consulting.timeclock
|
|
# !end
|
|
|
|
|
|
# 2010/02/27 (INV#2) XXXX Test Invoice
|
|
# Consulting:XXXX:Remote -0.5h @ $75.00
|
|
# Consulting:XXXX:Onsite -2.25h @ $100.00
|
|
# Receivable:Consulting:XXXX
|
|
|
|
|
|
# ; vim:ts=2 sw=2 sts=2 et ft=ledger fdm=manual:
|
|
# ==== command: ledger -f consulting.dat -s bal
|
|
# -2.25h Consulting:XXXX:Onsite
|
|
# 2.25h Consulting:XXXX:Onsite "Fix opty server"
|
|
# -30.0m Consulting:XXXX:Remote
|
|
# 15.0m Consulting:XXXX:Remote "IPMI Access"
|
|
# 15.0m Consulting:XXXX:Remote "SSL certificate for www.YYYY.com"
|
|
# $262.5 Receivable:Consulting:XXXX
|
|
# --------------------
|
|
# $262.5
|
|
|
|
# # timezone-related tests
|
|
# # 1. as in ledger, historical prices may contain a time and timezone.
|
|
# # hledger ignores them and uses 00:00 local time instead.
|
|
# # XXX needs --value not --cost
|
|
# hledgerdev -f - balance --no-total --cost
|
|
# <<<
|
|
# P 2011/01/01 00:00:00 A $1
|
|
# P 2011/01/01 15:00:00-0100 A $2
|
|
|
|
# 2010/12/31
|
|
# (20101231) 1 A
|
|
|
|
# 2011/1/1
|
|
# (20110101) 1 A
|
|
|
|
# 2011/1/2
|
|
# (20110102) 1 A
|
|
# >>>
|
|
# 1 A 20101231
|
|
# $2 20110101
|
|
# $2 20110102
|
|
# >>>=0
|