Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
612821e363 | ||
|
|
38c069425a | ||
|
|
eeac63be0d | ||
|
|
e22c0497bd | ||
|
|
4038053504 | ||
|
|
4ca0d58fe4 | ||
|
|
5cca20373e | ||
|
|
beeabd721a | ||
|
|
75d36f6a09 | ||
|
|
80ac099434 | ||
|
|
9a16786c2d | ||
|
|
00c2302068 | ||
|
|
f18368bc33 | ||
|
|
1126f5b371 | ||
|
|
ece7ef4584 | ||
|
|
afce931993 | ||
|
|
fff830e6b9 | ||
|
|
8ee998824c | ||
|
|
c4b55740e2 | ||
|
|
b65889ed51 | ||
|
|
bf18428bef | ||
|
|
f7d9567a63 | ||
|
|
1253fa5233 | ||
|
|
2a9d5da72f | ||
|
|
05430b4133 | ||
|
|
81c0db4750 | ||
|
|
71038e029e | ||
|
|
f28b9375d8 | ||
|
|
3ddd45b9ab | ||
|
|
5a1c8cbcda | ||
|
|
99b64bb134 | ||
|
|
2cd65993b2 | ||
|
|
4ddd80da6a | ||
|
|
03cf98c053 | ||
|
|
5f887fb19a | ||
|
|
85c2d22372 | ||
|
|
c1fb95e096 | ||
|
|
5727817585 | ||
|
|
e5c3eacd62 | ||
|
|
1f5a9513ed | ||
|
|
3328236b4d | ||
|
|
7af67a2ecd | ||
|
|
1951b87a64 | ||
|
|
317159e8c1 | ||
|
|
40295972f4 | ||
|
|
14f446e338 | ||
|
|
e12f1559ab | ||
|
|
c3ce910122 | ||
|
|
3392d04973 | ||
|
|
e735109fb1 | ||
|
|
7015fd5c03 | ||
|
|
28937a7c00 | ||
|
|
06d2b9e9b8 | ||
|
|
d24bcfc3bc | ||
|
|
69bb65ea26 | ||
|
|
e7f350ba26 | ||
|
|
c893c4d73a | ||
|
|
a8a2651fb6 | ||
|
|
05d412c07f | ||
|
|
3fbf6b9b00 | ||
|
|
cb8e467ab7 | ||
|
|
f2dbd6d623 | ||
|
|
5fa9ea562a | ||
|
|
9cfa07adcc | ||
|
|
8c69cfe9b2 | ||
|
|
0bd4a6f8a1 | ||
|
|
425d0cef08 | ||
|
|
6853fd0d34 | ||
|
|
7c9ed9957e | ||
|
|
05678b8046 | ||
|
|
3e1ec32fd3 | ||
|
|
3debac9c7b | ||
|
|
60e6824f69 | ||
|
|
df5e86e6c4 | ||
|
|
b081ab3e89 | ||
|
|
a4625bbffb | ||
|
|
91af0fb678 | ||
|
|
0ae365085b | ||
|
|
b22a72940e | ||
|
|
2fb5c8f53e | ||
|
|
d7365902d4 | ||
|
|
f6858c6530 | ||
|
|
cbaaa525b6 | ||
|
|
da1cbfd558 | ||
|
|
f8ff618318 | ||
|
|
c71150cab3 | ||
|
|
78ffbdd65f | ||
|
|
7733443332 | ||
|
|
bb74334f1f | ||
|
|
2262e4b252 | ||
|
|
f34a7c3a47 | ||
|
|
2584156da2 | ||
|
|
a8faeb02b5 | ||
|
|
206bbac206 | ||
|
|
e87a391ed4 | ||
|
|
60774f0d0a | ||
|
|
be82140194 | ||
|
|
9821bdd51e | ||
|
|
6dac9305e5 | ||
|
|
5e010fd860 | ||
|
|
994d66caa3 | ||
|
|
cbad3d15bc | ||
|
|
ccf0bcd700 | ||
|
|
33db6454a9 | ||
|
|
a0a7832d3a | ||
|
|
582533ff42 | ||
|
|
f21b62edbb | ||
|
|
7f44f1ab88 | ||
|
|
85e6dbcdde | ||
|
|
a1d4026d6a | ||
|
|
a517b778c6 | ||
|
|
cdce88ff00 | ||
|
|
eda316fff6 | ||
|
|
89e5d33b10 | ||
|
|
ce6945142c | ||
|
|
b4d43e279c | ||
|
|
ae092912f6 | ||
|
|
c94e3668b2 | ||
|
|
c29dd20661 | ||
|
|
8ec0e54fa0 | ||
|
|
e66eb2f351 | ||
|
|
da2f6ea8fc | ||
|
|
8b0bfce413 | ||
|
|
8d58264ba4 | ||
|
|
e765e68b9d | ||
|
|
2e9a37626b | ||
|
|
d725d601e5 | ||
|
|
280e86131f | ||
|
|
790d39d9ac | ||
|
|
4c562d3101 | ||
|
|
ed394b60d1 | ||
|
|
5e31e05a36 | ||
|
|
d85bbf1a31 | ||
|
|
e10492625a | ||
|
|
37b9893df6 | ||
|
|
bce9e311cf | ||
|
|
4f2b32c1e1 | ||
|
|
037679f073 | ||
|
|
3e551e31e3 | ||
|
|
b4baf0fb82 | ||
|
|
02420f000f | ||
|
|
5afa0f29b1 | ||
|
|
a4f5c336b1 | ||
|
|
0ffb47662e | ||
|
|
7e65d2a5cd | ||
|
|
ee6e06b7d5 | ||
|
|
5266a55c64 | ||
|
|
5df308e81d | ||
|
|
74bd11d7e1 | ||
|
|
df37326c95 | ||
|
|
3773d04991 | ||
|
|
4dbc92712e | ||
|
|
c65bf0cb9a | ||
|
|
1f05a2b240 | ||
|
|
3f84b997ac | ||
|
|
1c47e75e6f | ||
|
|
1f04d08061 | ||
|
|
8ea339ab0f | ||
|
|
de9dc63c55 | ||
|
|
3ea61dd88f | ||
|
|
6ff3f7701f | ||
|
|
6d3956ff5f | ||
|
|
6ccad120d7 | ||
|
|
7be6fa1e91 | ||
|
|
55284034da | ||
|
|
eeb2b75b4c | ||
|
|
7f872d1a8c | ||
|
|
8f5b01564e | ||
|
|
3863230030 | ||
|
|
7cda9ec0fc | ||
|
|
c7352528ab | ||
|
|
ba18ab2e16 | ||
|
|
1fb965a74a | ||
|
|
366327464b | ||
|
|
862ef8d408 | ||
|
|
0512626e26 | ||
|
|
4e4d7b0729 | ||
|
|
04ab9aaedf | ||
|
|
0b24d35a3d | ||
|
|
e298bf5935 | ||
|
|
921562a1dd | ||
|
|
de088e6e3e | ||
|
|
d2ced133f6 | ||
|
|
6ff68e42b9 | ||
|
|
2186c3740c | ||
|
|
cb050c3441 | ||
|
|
762ee55d45 | ||
|
|
c6915b38bd | ||
|
|
b5a32b6e65 | ||
|
|
eb14b26c7c | ||
|
|
32197c0397 | ||
|
|
02c2c2718a | ||
|
|
4d0ad17551 | ||
|
|
416122a718 | ||
|
|
a5ac7f8cfa | ||
|
|
ad81e44df6 | ||
|
|
c4d1f2ce4b | ||
|
|
b78276b643 | ||
|
|
0d0d626c29 | ||
|
|
e8adf18a55 | ||
|
|
e22d717e8a | ||
|
|
87e7fc92f6 | ||
|
|
605b1d214e | ||
|
|
d38bb3fea5 | ||
|
|
7844a750a3 | ||
|
|
5a3a52e164 | ||
|
|
6992663e99 | ||
|
|
b521cacbf1 | ||
|
|
bc372c52e9 | ||
|
|
6ddfab0dc3 | ||
|
|
0589978d99 | ||
|
|
0ba4a09e2e | ||
|
|
1f0292c073 | ||
|
|
96976c6074 | ||
|
|
6993fe7ad5 | ||
|
|
bacd9218f2 | ||
|
|
5764bbd2a3 | ||
|
|
40149fe10b | ||
|
|
db633960ad | ||
|
|
735fc1ef03 | ||
|
|
a9f1433af4 | ||
|
|
7ea80268fe | ||
|
|
32a8376975 | ||
|
|
6f44a6d448 | ||
|
|
fd1c8d9609 | ||
|
|
a946f5a021 | ||
|
|
730cf3b2db | ||
|
|
fbe9b2c351 | ||
|
|
1f21c54b77 | ||
|
|
babab249a5 | ||
|
|
115166a283 | ||
|
|
34d5fb574f | ||
|
|
7f65852dc4 | ||
|
|
dce539cb3b | ||
|
|
bf2fbcc13e | ||
|
|
e51692ba4a | ||
|
|
ed4b02ba77 | ||
|
|
228e760ab9 | ||
|
|
f5b81e02f7 | ||
|
|
5fbf6bbda4 | ||
|
|
0df7c4f64e | ||
|
|
2039d0061e | ||
|
|
1f807e9dd5 | ||
|
|
c0b0999cb0 | ||
|
|
0565805d5b | ||
|
|
9ae6333656 | ||
|
|
dfb345dc86 | ||
|
|
b20163f6b9 | ||
|
|
566cd48cd6 | ||
|
|
301a3b3841 | ||
|
|
16634b1d01 | ||
|
|
aaf8203d44 | ||
|
|
fd71ce229d | ||
|
|
f7350f8b9d | ||
|
|
f3f7f0c2cb | ||
|
|
fcb95aa409 | ||
|
|
6bf439f496 | ||
|
|
187fc8a245 | ||
|
|
ad7f66c3ca | ||
|
|
4a7e50ec89 | ||
|
|
a75a0ef051 | ||
|
|
6ba01738dc | ||
|
|
a3f204707e | ||
|
|
af560a0616 | ||
|
|
69eb28b6bd | ||
|
|
b9decb49e0 | ||
|
|
e94f778931 | ||
|
|
b7bd7e7f2f | ||
|
|
f40fa19a00 | ||
|
|
142c804617 | ||
|
|
d5c3e087c1 | ||
|
|
1615dde089 | ||
|
|
fde5fd9268 | ||
|
|
d9462cabab | ||
|
|
e9fac866bc | ||
|
|
a1c934e4bc | ||
|
|
b2f1db2cb4 | ||
|
|
baf5d2442d | ||
|
|
87b8b49ea9 | ||
|
|
11c2e06b33 | ||
|
|
64cd2072d8 | ||
|
|
5f4eda7ad4 | ||
|
|
0610b5cee0 | ||
|
|
c5713f537d | ||
|
|
576c8cedbf | ||
|
|
9c7f34a2f9 | ||
|
|
3815e21b65 | ||
|
|
3a46ef6428 | ||
|
|
6db695375e | ||
|
|
6f6d28dd69 | ||
|
|
e1b1bb7ea6 | ||
|
|
e13098476e | ||
|
|
d40b24b2c1 | ||
|
|
bfa41840f6 | ||
|
|
459bc5c1fc | ||
|
|
d653ada28f | ||
|
|
e45d0e6641 | ||
|
|
210659bace | ||
|
|
0c1644aaf3 | ||
|
|
26fe37f297 | ||
|
|
c3af1a9ad6 | ||
|
|
5db52f470f | ||
|
|
f33ae566f3 | ||
|
|
234ca3f7fd | ||
|
|
86e58a889e | ||
|
|
9cc8e5f215 | ||
|
|
5653c0d164 | ||
|
|
e50e358b93 | ||
|
|
3557e7845a | ||
|
|
b5a51b997d | ||
|
|
526519b6c9 | ||
|
|
04e4b187bc | ||
|
|
906f98ebf9 | ||
|
|
ea67ca4242 | ||
|
|
9bc74a5eea | ||
|
|
14503c1683 | ||
|
|
2e206dba7e | ||
|
|
f505cd0ade | ||
|
|
9a555676f3 | ||
|
|
062b38f1ce | ||
|
|
033e35cd88 | ||
|
|
ad202c716c | ||
|
|
57e8b983b7 | ||
|
|
db9d78dbe5 | ||
|
|
612543376d | ||
|
|
e648ec687b | ||
|
|
f710769d2a | ||
|
|
1be1db0c45 | ||
|
|
b8e928e64f | ||
|
|
3ee22e634c | ||
|
|
5f0ab67c1c | ||
|
|
e1e98f2d3e | ||
|
|
d530131abc | ||
|
|
3132f20847 | ||
|
|
ba929c5fed | ||
|
|
be62a5c63b | ||
|
|
2c3a2c825e | ||
|
|
ae566e50e5 | ||
|
|
59abcc5a74 | ||
|
|
b802490385 | ||
|
|
dab9304250 | ||
|
|
e1a3a2c577 | ||
|
|
25792381cf | ||
|
|
b4da84fc7d | ||
|
|
8618038bc5 | ||
|
|
f9621cf9a4 | ||
|
|
e6f97dfaaa | ||
|
|
3769a2295b | ||
|
|
3b63b628b1 | ||
|
|
d3f1c6218a | ||
|
|
5ab3a7e3b7 | ||
|
|
387f8c83e6 | ||
|
|
e7931f44eb | ||
|
|
e417e12d1b | ||
|
|
3125a5c78a | ||
|
|
b99aa08060 | ||
|
|
e0fe7fa3c4 | ||
|
|
c45c799b3a | ||
|
|
aae4c86fdc | ||
|
|
37c7be9f3c | ||
|
|
a5a5a522a0 | ||
|
|
803422ec40 | ||
|
|
c037590252 | ||
|
|
ee81071e40 | ||
|
|
25852c3842 | ||
|
|
4ed5630816 | ||
|
|
bef278413b | ||
|
|
9f7eea2431 | ||
|
|
be7a983e3b | ||
|
|
6bedf56f75 | ||
|
|
3f1e16cc27 | ||
|
|
08575e2744 | ||
|
|
88f0e7cc9a | ||
|
|
265f56c217 | ||
|
|
2669475781 | ||
|
|
1a77a1aa8c | ||
|
|
8cbcd1cddc | ||
|
|
659b1b561b | ||
|
|
005691acf3 | ||
|
|
7e2a711598 | ||
|
|
1ef1c0b79d | ||
|
|
777a92ba68 | ||
|
|
d07d7822ba | ||
|
|
26b4f6759b | ||
|
|
91398822b8 | ||
|
|
8f7b5c7760 | ||
|
|
fe86ee5c02 | ||
|
|
660f3d80dc | ||
|
|
d1969bb069 | ||
|
|
4e7bc6a67d | ||
|
|
8614a49e00 | ||
|
|
99e94ab2cf | ||
|
|
0685bd8fb8 | ||
|
|
e1eceab8d3 | ||
|
|
6fe9045af4 | ||
|
|
41ef4d8c8a | ||
|
|
8d6ea91680 | ||
|
|
18a0e3d1c7 | ||
|
|
0f42a996c7 | ||
|
|
2dacde3147 | ||
|
|
8d5f02af26 | ||
|
|
2646cbca09 | ||
|
|
5caae74809 | ||
|
|
5b6cba6453 | ||
|
|
a7021ec8dd | ||
|
|
d413651001 | ||
|
|
8e82e83f86 | ||
|
|
e28e1ead48 | ||
|
|
755b173a77 | ||
|
|
5c5cc2609d | ||
|
|
70592e8e91 | ||
|
|
c44fb4dbd3 | ||
|
|
6c5e1f83d9 | ||
|
|
5dfb094459 | ||
|
|
1d532143b5 | ||
|
|
ca0def6021 | ||
|
|
402c9fa20b | ||
|
|
945099dc67 | ||
|
|
ebd18b5716 | ||
|
|
1a1840670d | ||
|
|
ebed93c61a | ||
|
|
856461f693 | ||
|
|
06c8db564e | ||
|
|
6c11480447 | ||
|
|
86f4b3fe5d | ||
|
|
f0f33749ee | ||
|
|
aeac50c908 | ||
|
|
29ba2841bd | ||
|
|
ef49d7be94 | ||
|
|
f20acc5f91 | ||
|
|
8d7aba7191 | ||
|
|
f08153635c | ||
|
|
55621de0e4 | ||
|
|
6edf2d363c | ||
|
|
3da5010210 | ||
|
|
d92dda2232 | ||
|
|
442657562d | ||
|
|
e099d6051f | ||
|
|
8fa402bae5 | ||
|
|
cd3d0a6013 | ||
|
|
788420f05e | ||
|
|
bbdab26822 | ||
|
|
10395a09a6 | ||
|
|
b996b30793 | ||
|
|
36ac3ec08e | ||
|
|
611f800de2 | ||
|
|
e2b9b89a71 | ||
|
|
5facd05cce | ||
|
|
559c21863c | ||
|
|
0c6f2643b3 | ||
|
|
efb1df65ea | ||
|
|
f738c204f0 | ||
|
|
334ca0dbef | ||
|
|
d3b31848b0 | ||
|
|
9423194660 | ||
|
|
ca49059245 | ||
|
|
e0ae6fa5df | ||
|
|
8c305d2035 | ||
|
|
a98c6e8a6e | ||
|
|
a7431cc6ed | ||
|
|
d7c3520f00 | ||
|
|
fe54caa731 | ||
|
|
d686a55272 | ||
|
|
ba0cbf582b | ||
|
|
450a3c9cd1 | ||
|
|
43d619edb6 | ||
|
|
2ca8c04c37 | ||
|
|
f593f3af39 | ||
|
|
565fd8f1d6 | ||
|
|
cb4731c94e | ||
|
|
1f935cf303 | ||
|
|
5f0ccb2a2a | ||
|
|
663f3db2ef | ||
|
|
e424b2f23e | ||
|
|
99f557ebb2 | ||
|
|
c473dd0326 | ||
|
|
e88ac36ae6 | ||
|
|
b085481a78 | ||
|
|
44742bc085 | ||
|
|
6224efe25e | ||
|
|
db2ac3c360 | ||
|
|
f50c692f40 | ||
|
|
a00cec305b | ||
|
|
46364e04ec | ||
|
|
51bbd71965 | ||
|
|
de1a30881f | ||
|
|
24fd5e11de | ||
|
|
35a7e696cf | ||
|
|
35291a25e2 | ||
|
|
a86bc71a32 | ||
|
|
ba38151bbb | ||
|
|
1faa31dcf6 | ||
|
|
e2d622c196 | ||
|
|
50cdb4ac1d | ||
|
|
f78eb154ee | ||
|
|
96eb7071f7 | ||
|
|
f2b592e065 | ||
|
|
e1eb2bb48d | ||
|
|
0bcab14bf4 | ||
|
|
7398dcfed7 | ||
|
|
5834e156f0 | ||
|
|
b020f0f081 | ||
|
|
6c8cb152c6 | ||
|
|
f812dd6da9 | ||
|
|
75973a9b27 | ||
|
|
8123288003 | ||
|
|
c31f99b670 | ||
|
|
16005ba031 | ||
|
|
3c2ad42587 | ||
|
|
b3f8c9396f | ||
|
|
5b07c15444 | ||
|
|
f5122cd85b | ||
|
|
ca293f43e2 | ||
|
|
e5ddda1b74 | ||
|
|
5f877783e5 | ||
|
|
f13d7ad19f | ||
|
|
b2a6f4b17e | ||
|
|
89bf6f8978 | ||
|
|
d4ded505de | ||
|
|
d69f2c042a | ||
|
|
2f90b94356 | ||
|
|
52882b1549 | ||
|
|
d86639b22d | ||
|
|
e7d1dcc77d | ||
|
|
7fc97b1f10 | ||
|
|
47174686b8 | ||
|
|
a89666b62e | ||
|
|
6934fa250d | ||
|
|
4898e247ed | ||
|
|
84cf3cb777 | ||
|
|
7d73ec6f5b | ||
|
|
74b0c70955 | ||
|
|
42fec858e6 | ||
|
|
bae7cd50d1 | ||
|
|
9e3758abba | ||
|
|
ad6a59c062 | ||
|
|
26f4f5a452 | ||
|
|
53f2d8bef6 | ||
|
|
9f2049b5b1 | ||
|
|
0b00829ba2 | ||
|
|
5925e85eae | ||
|
|
2fab2f24e6 | ||
|
|
bdeeb572ac | ||
|
|
fa6efc064a | ||
|
|
bb38407c55 | ||
|
|
596c9b8153 | ||
|
|
ac029c3f22 | ||
|
|
ac0e3d842e | ||
|
|
6f5c3ec71a | ||
|
|
5ed82e1ea1 | ||
|
|
012398d060 | ||
|
|
b17a80a045 | ||
|
|
716fc6fd77 | ||
|
|
0421ed1d0a | ||
|
|
cf19c35b42 | ||
|
|
f75aa3aea3 | ||
|
|
174257d1fd | ||
|
|
c1302e526e | ||
|
|
bf9531fb55 | ||
|
|
18501ae6f8 | ||
|
|
16ab4031ed | ||
|
|
74ca90e5f2 | ||
|
|
6cf9e07172 | ||
|
|
ea95196bfe | ||
|
|
5146c58bc9 | ||
|
|
0d13fddad1 | ||
|
|
9642cbf0fb | ||
|
|
4e302ec8fc | ||
|
|
f0d2e745ea | ||
|
|
902a2a7cd2 | ||
|
|
ef9abdfa17 | ||
|
|
c04f9435cf | ||
|
|
4e4897f2f0 | ||
|
|
25ee6c8350 | ||
|
|
8bd63e1306 | ||
|
|
9de36da982 | ||
|
|
48e30d2399 | ||
|
|
fbd682b854 | ||
|
|
2cc61af009 | ||
|
|
b22358508f | ||
|
|
91d3a494d1 | ||
|
|
96479d2b14 | ||
|
|
2fea3d325c | ||
|
|
09fc668ff9 | ||
|
|
da884b08e9 | ||
|
|
74ed90d0d2 | ||
|
|
b6e33bc5f9 | ||
|
|
c426416a54 | ||
|
|
33bc087e42 | ||
|
|
7b4d801da9 | ||
|
|
773d6ab158 | ||
|
|
0824a1afe9 | ||
|
|
1e64288bda | ||
|
|
bf5328229e | ||
|
|
83535813b8 | ||
|
|
4a68bc20f3 | ||
|
|
a61a8e013b | ||
|
|
59c2e7f7b7 | ||
|
|
a0f1e4929c | ||
|
|
81eb21867f | ||
|
|
73bb266e2f | ||
|
|
5a38f2a853 | ||
|
|
4fca529235 | ||
|
|
2bbaac9f21 | ||
|
|
87b64c2798 | ||
|
|
456e3203d0 | ||
|
|
6a4c1aa5e3 | ||
|
|
2ff149fde6 | ||
|
|
b6d098aeab | ||
|
|
81f3bb8c89 | ||
|
|
8f0fe8de09 | ||
|
|
67cf4d2f33 | ||
|
|
476fae13e2 | ||
|
|
b3ee50ba88 | ||
|
|
b5be60251b | ||
|
|
9f01d1f61a | ||
|
|
ebaa9f637f | ||
|
|
2f737a26e4 | ||
|
|
cb9fd1c237 | ||
|
|
2925916468 | ||
|
|
6225da573f | ||
|
|
f60d574233 | ||
|
|
450bfefa38 | ||
|
|
d83dc7b639 | ||
|
|
54c5e75d8e | ||
|
|
1930fc45cb | ||
|
|
854639a981 | ||
|
|
0c5f1bfe53 | ||
|
|
eeeec6340d | ||
|
|
bfd8ecdc38 | ||
|
|
3ea873f887 | ||
|
|
dc2aaeec41 | ||
|
|
aea78aff43 | ||
|
|
9a2a0fc27d | ||
|
|
bb25bf89a6 | ||
|
|
abaf45e1f6 | ||
|
|
73d86cf5a0 | ||
|
|
5002e33a56 | ||
|
|
fbbef01050 | ||
|
|
5c77d55e88 | ||
|
|
45a9de450b | ||
|
|
5e183d7991 | ||
|
|
4158479286 | ||
|
|
fe8fe44c7e | ||
|
|
85f67cd23f | ||
|
|
e2aaca6d5c | ||
|
|
6c4ebb8ee5 | ||
|
|
e730931f7e | ||
|
|
f8a7802beb | ||
|
|
dc9202053d | ||
|
|
92c1a3dda0 | ||
|
|
ef47d3106c | ||
|
|
e820ba32c6 | ||
|
|
bbfa2af176 | ||
|
|
57bde5cffc | ||
|
|
3c46f67df1 | ||
|
|
9d28375bcd | ||
|
|
4f817c1b42 | ||
|
|
e1db6067eb | ||
|
|
508870da7b | ||
|
|
56ec009f0b | ||
|
|
f912ebc697 | ||
|
|
e3a862e4c3 | ||
|
|
c4fdf6d9a0 | ||
|
|
f40a735a0e | ||
|
|
fcab430ea4 | ||
|
|
142d2d0724 | ||
|
|
ab1772a940 | ||
|
|
f539e7f5e5 | ||
|
|
0f88879121 | ||
|
|
95e8007bf4 | ||
|
|
1ff8d99c0c | ||
|
|
a579d13179 | ||
|
|
7b2142612e | ||
|
|
914ec18fff | ||
|
|
c779966f96 | ||
|
|
37d4fc2194 | ||
|
|
4a40b1656f | ||
|
|
4770a9cadc | ||
|
|
272e0b1c88 | ||
|
|
664060c49e | ||
|
|
d7715aba68 | ||
|
|
321fd8d9ce | ||
|
|
7cfd5eba46 | ||
|
|
cd1aef8dfc | ||
|
|
e73bb1bd79 | ||
|
|
35e4dac5d6 | ||
|
|
045421c749 | ||
|
|
e62dadfc2f |
@@ -0,0 +1,57 @@
|
|||||||
|
name: Validate Tryton customizations
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- '8.0'
|
||||||
|
- 'integration/8.0'
|
||||||
|
- 'feature/**'
|
||||||
|
- 'translation/**'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- '8.0'
|
||||||
|
- 'integration/8.0'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
validate:
|
||||||
|
runs-on: ubuntu-24.04
|
||||||
|
steps:
|
||||||
|
- name: Check out repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
github-server-url: https://code.unpaismejor.org.do
|
||||||
|
|
||||||
|
- name: Set up Python
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: '3.13'
|
||||||
|
cache: pip
|
||||||
|
|
||||||
|
- name: Install validation dependencies
|
||||||
|
run: python -m pip install --upgrade build polib
|
||||||
|
|
||||||
|
- name: Validate Python syntax
|
||||||
|
run: python -m compileall -q trytond/trytond
|
||||||
|
|
||||||
|
- name: Validate PO files
|
||||||
|
run: python ci/validate_po.py
|
||||||
|
|
||||||
|
- name: Build customized packages
|
||||||
|
run: python -m build trytond
|
||||||
|
|
||||||
|
- name: Install customized Tryton server
|
||||||
|
run: python -m pip install './trytond[test]'
|
||||||
|
|
||||||
|
- name: Run relevant Tryton tests
|
||||||
|
env:
|
||||||
|
TRYTOND_DATABASE_URI: sqlite://
|
||||||
|
DB_NAME: ':memory:'
|
||||||
|
run: |
|
||||||
|
python -m unittest discover -s ci/tests -p 'test_*.py'
|
||||||
|
python -m unittest discover -s trytond/trytond/tests -p 'test_i18n.py'
|
||||||
|
python -m unittest trytond.tests.test_ir.IrTestCase.test_dominican_spanish_language
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
name: Propose upstream Tryton updates
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '35 */6 * * *'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
pull-requests: write
|
||||||
|
issues: write
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: upstream-8.0-sync
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
propose-update:
|
||||||
|
runs-on: ubuntu-24.04
|
||||||
|
env:
|
||||||
|
GITEA_URL: https://code.unpaismejor.org.do
|
||||||
|
MIRROR_REPOSITORY: tryton-do/tryton-mirror
|
||||||
|
CUSTOM_REPOSITORY: tryton-do/tryton
|
||||||
|
TARGET_BRANCH: '8.0'
|
||||||
|
INTEGRATION_BRANCH: integration/8.0
|
||||||
|
UPDATE_BRANCH: automation/upstream-8.0
|
||||||
|
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
||||||
|
steps:
|
||||||
|
- name: Check out customized repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
token: ${{ secrets.GITEA_TOKEN }}
|
||||||
|
github-server-url: https://code.unpaismejor.org.do
|
||||||
|
|
||||||
|
- name: Configure Git identity
|
||||||
|
run: |
|
||||||
|
git config user.name 'tryton-sync'
|
||||||
|
git config user.email 'tryton-sync@noreply.unpaismejor.org.do'
|
||||||
|
|
||||||
|
- name: Propose upstream update
|
||||||
|
run: ci/sync_upstream.sh
|
||||||
@@ -10116,3 +10116,147 @@ aa3fec2b7a4ede5cf546ccc7cc8f95c9aa9dd288 trytond-7.8.0
|
|||||||
5d386601295db93f432663c7dfd558b82f99f998 trytond-gis-8.0.0
|
5d386601295db93f432663c7dfd558b82f99f998 trytond-gis-8.0.0
|
||||||
5d386601295db93f432663c7dfd558b82f99f998 trytond-8.0.0
|
5d386601295db93f432663c7dfd558b82f99f998 trytond-8.0.0
|
||||||
5d386601295db93f432663c7dfd558b82f99f998 naiad-8.0.0
|
5d386601295db93f432663c7dfd558b82f99f998 naiad-8.0.0
|
||||||
|
18e42246957acdb72e5ed9ca00a4911616f3207c trytond-8.0.1
|
||||||
|
22217a92b7cb1b0e360bdfb5324724bacdcdc722 sao-8.0.1
|
||||||
|
841de42f1937214328467bccf5539771b26e776e tryton-8.0.1
|
||||||
|
4c83022598db0c6567366b6f70c90e4eb9a9bc65 trytond-8.0.2
|
||||||
|
90b50dcc879fe168a294731e50028e94638b7bcd tryton-8.0.2
|
||||||
|
b458bf9b8899bcbff37f2d581a2ff7e6c034ab51 sao-8.0.2
|
||||||
|
c26ff653ffb19a3ef1ac55fca65341006cf365aa naiad-8.0.1
|
||||||
|
641aa0794a77426094adda94e35a9f7a67149848 stock_lot-8.0.1
|
||||||
|
0ed9c7edaee024b63abf8eb1b9b1975e7ce1cd72 sale-8.0.1
|
||||||
|
57a908ea277bae4097fcfa3f3d74c5f1ce842b4d currency_ro-8.0.1
|
||||||
|
70b99e7040b2faeda5c86008f145af4751e34441 trytond-8.0.3
|
||||||
|
12190ea41ce3c2db9da84b1c28bc4761c260bc79 tryton-8.0.3
|
||||||
|
4a1e56b7316d357a475e9a6a21fa05c8f19dbca6 sao-8.0.3
|
||||||
|
828121cc1d9dc5d70d4d4f711db393e1273208cf web_shop_shopify-8.0.1
|
||||||
|
b05e024c2ccb6aa2a4198287190b36b09c9738ff production_work_timesheet-8.0.1
|
||||||
|
982326e96d3439a4552cb19f0b58bd992c632fb7 trytond-8.0.4
|
||||||
|
a3751366a7349047dca30ceedd7b34abfe28f611 tryton-8.0.4
|
||||||
|
c1481442e1fc1f63587c4b85e65b8a3e197d2794 sao-8.0.4
|
||||||
|
f9dd2094c384980e591c9b3185b34bf200c54e1c stock_supply_day-8.0.1
|
||||||
|
cfed2065d376fe246be7f081bf361d8c02272322 stock_package_shipping-8.0.1
|
||||||
|
025d8b8101a3b7e78d103c0940712541264e71ee stock-8.0.1
|
||||||
|
7d3ed4d0cd9e132a869614552115fb9635ee0c88 purchase_request_quotation-8.0.1
|
||||||
|
d816f2b7db2593321a27f4a72581185dde77c6f5 project-8.0.1
|
||||||
|
e5f4672e622590210e0326db5372fcba5b7a6eee product_kit-8.0.1
|
||||||
|
a8bd795947b0b679e5a8ddd6c5b985ee31c63089 account_stock_eu-8.0.1
|
||||||
|
5dd0dcb04c257978a09d52b760a96019ffeab5d4 account_payment_sepa-8.0.1
|
||||||
|
fa4fb801f90f877603645caf51f37f7f9fedf9db trytond-8.0.5
|
||||||
|
65b0b3244b26ff0578af5cedebf841654041da03 tryton-8.0.5
|
||||||
|
f5d4bda34a66a9941dc6387cf62f3df7667c7727 sao-8.0.5
|
||||||
|
cfdec073b518d65c70433762290064ecffafab70 user_role-8.0.1
|
||||||
|
4bb9f293d98f1cdb7d159be20fcb69e4c18eb39d sale_amendment-8.0.1
|
||||||
|
37b133347403e31d97d661f35892754a9f9c727d purchase_amendment-8.0.1
|
||||||
|
fb3c896ef8f122b82a94680b057b32bceb3a2ff6 project-8.0.2
|
||||||
|
bfd2cded178b87c5816d369b1ac9496cf0b26e43 account_product-8.0.1
|
||||||
|
5a3bd5f358b84bb076b28f115c3e84e40a9c8f43 account_payment-8.0.1
|
||||||
|
101b48a301cbfab687923b4ce01746e6f8847b8d account-8.0.1
|
||||||
|
6654866a07a3b1d8ba23e14f64d8d35681807012 trytond-8.0.6
|
||||||
|
bfa4608623bc3128e8130848c88598eb94c7cfc3 tryton-8.0.6
|
||||||
|
7abbd905e13862537e474bddc88379d78f61c248 sao-8.0.6
|
||||||
|
5f659df9d5e043bae538d22bbe98cb7aa8bd3ed1 web_shop_shopify-8.0.2
|
||||||
|
f51f52e1b3a4f7d305f84f417cf96e3dc2ce6b01 stock_shipment_customs-8.0.1
|
||||||
|
31c74e9043fe332fb2023c8693a4eff8d847628e stock_lot-8.0.2
|
||||||
|
31f5306863e6b49fa8563bc2fcdb8fa72f9e41fe stock-8.0.2
|
||||||
|
67b12222818b22c8861be6b5eaa7b5b68b3e66fa project-8.0.3
|
||||||
|
eeba9c16ce670a979c123afca5c82f7371415b34 product_kit-8.0.2
|
||||||
|
530a04958c2fb954e07321e345dbdb402b4667bd production-8.0.1
|
||||||
|
629e6623ec3efaf3b909e8b0cdd76ddd034f6ec5 party-8.0.1
|
||||||
|
bc1c129f89a66b5178578b96ff70062621c0be0e marketing_email-8.0.1
|
||||||
|
8777fbd30109de156949c9b363f3e0274ac5eb73 marketing_automation-8.0.1
|
||||||
|
5383bfd494d3fe9b7891232c1d3bbe78fa81a150 edocument_uncefact-8.0.1
|
||||||
|
451ee8df315f2173863a86c7401563a6c93bd3a9 edocument_ubl-8.0.1
|
||||||
|
23936d844f2497541655aba6dcb63cb565b20d8b company-8.0.1
|
||||||
|
c2dc3ddb2ebee5de8f3370395f9bf64fc00af1b2 account_statement_sepa-8.0.1
|
||||||
|
6f53d94b3fd6dd665aa785c1fb2bce5ac1224b62 account_payment_braintree-8.0.1
|
||||||
|
40831fce9b9d77dcfc328905ccecc847a9b89787 account-8.0.2
|
||||||
|
366a1ff84435b3422d9f7a77bfb96742b687e247 trytond-8.0.7
|
||||||
|
f0f8b4cefe335797b495c1d9205d7bacce29cc9c tryton-8.0.7
|
||||||
|
380e85613a7e6ef8761b064bb972cab22fb4fe17 sao-8.0.7
|
||||||
|
ed7d412d2fceaea5f09f298c4220504e0ae666d0 web_user-8.0.1
|
||||||
|
6d5f9e693e1c6cc1b21d51a72181d9dbb6e9c3b8 web_shop_shopify-8.0.3
|
||||||
|
00502af1a0231ec2ed3083363bf6a36eb62dce76 stock_package_shipping_ups-8.0.1
|
||||||
|
6efe2638d2dd7e065430f0b63122f40c7ee61b1d stock_lot_sled-8.0.1
|
||||||
|
60d73066a878ecbc3eea6678b99e15788721d83c stock-8.0.3
|
||||||
|
7953bc3bcfa8b6aff88b083cb7e9c18f1d59555c sale_subscription-8.0.1
|
||||||
|
f03f633ddf27630ec2f6ce6f7b62d074e8b2f1ba sale_rental-8.0.1
|
||||||
|
c3d860bb7c1aa236c87155336b0d6a94dccef62c sale_opportunity-8.0.1
|
||||||
|
e38fdd565ec0ff0fc41a9e3546062131e876829e sale_complaint-8.0.1
|
||||||
|
1714d985b1237a1eb1bf2fe7d4952b3c912b75a2 sale_blanket_agreement-8.0.1
|
||||||
|
a5899fdac5c0c9708ca977a56e068cc45bb415e1 sale-8.0.2
|
||||||
|
73a86590f5c657598211504f244054d6b101fded quality-8.0.1
|
||||||
|
71a28e0517943555bdaa0d0c3f4a3a501981f4a0 purchase_request_quotation-8.0.2
|
||||||
|
c9e9f04a1c81a0f6782b61c528eadd5e3b3620c3 purchase_request-8.0.1
|
||||||
|
099cfb79956006e34a8e3730192353795eac6dd7 purchase_blanket_agreement-8.0.1
|
||||||
|
3c1ae1bf507c9e2b17b700f10cb4eff8c5d9c0a2 purchase-8.0.1
|
||||||
|
06a720cc7b3a8e722124ff4155a5f9505a5f3247 project-8.0.4
|
||||||
|
775846363b0a8a90ee38354966ebc686060db73f product-8.0.1
|
||||||
|
4343c9246cd63b2a68dc951fb1ac83819805cae4 party-8.0.2
|
||||||
|
4c82e29c14920e3980f902c7d9b2cb245c59450d edocument_ubl-8.0.2
|
||||||
|
5177f959cb590e9d9af14f3cd954822f99da533e commission-8.0.1
|
||||||
|
79bc9f0de1df71c6ca7b4e7db4661e79d847a405 analytic_account-8.0.1
|
||||||
|
b5af34388aac0c536454b22ba98d425086560afc account_invoice-8.0.1
|
||||||
|
6146f4278e008df4ce2df9bf5d9a75a930f98e76 account-8.0.3
|
||||||
|
78bcedc0a6714ef8d7b708851276616c0aa6a6a1 trytond-8.0.8
|
||||||
|
efa11e1ddfd5503d96909ca8310aee8fcfacd56a sao-8.0.8
|
||||||
|
f076d5b75be00ee9c373841cf96f0b640242edc0 web_shop_shopify-8.0.4
|
||||||
|
8e22290a8516bda8b6d21fcce93e3f80cbc3f297 stock_lot-8.0.3
|
||||||
|
bb0b37cd2b42c5e1adc16b01c27575230bda4355 sale_supply_production-8.0.1
|
||||||
|
53d5d46245bdacf1f1d546303b46a22db326eef7 sale-8.0.3
|
||||||
|
7ff2088c1fc6ea202462f4467960012727042849 production_outsourcing-8.0.1
|
||||||
|
39a4a58a46bb3902653b549ecba0d73421cf2867 edocument_uncefact-8.0.2
|
||||||
|
bad1ac43adc3348d894bb57bc1ab33448bdd2881 edocument_ubl-8.0.3
|
||||||
|
b72bf9f5463aeca4aeeeeee6e3ed891330bc9249 edocument_peppol-8.0.1
|
||||||
|
6ae4f92d5c9c10c3ffd5d2877bc3cd079a088f76 authentication_saml-8.0.1
|
||||||
|
bc72b60c7d66ff780a7dfd718ade8f33f27587fe account_statement-8.0.1
|
||||||
|
63edd9d8801eecb2c87df8d8d23f58854a3dd250 account_payment_sepa_cfonb-8.0.1
|
||||||
|
11943a0789a15d1cf60daabd00832ce1ed3ec2c4 account_payment_sepa-8.0.2
|
||||||
|
79ea9e7f767c862491bdb71cc6084ad90eb58e6d trytond-8.0.9
|
||||||
|
131ef6fa8bf2e7490fdbbb217782d79d10567e58 tryton-8.0.8
|
||||||
|
842874aa076b8e94ffb00645de0c4ef8704e8292 sao-8.0.9
|
||||||
|
553c06baac9c622d6affb015a2f0674ec7091d1d web_shop_shopify-8.0.5
|
||||||
|
4af0643b1a4071d2e8ee3ec8f520f95a7c7ced12 sale_blanket_agreement-8.0.2
|
||||||
|
397681274e38b1f3501ca7bee8db377ce70220eb party-8.0.3
|
||||||
|
302fc83b4c873cd33b0a68daa157193c26b266cb edocument_ubl-8.0.4
|
||||||
|
3121d3027e137afb2a5f690c109d03c663d588a8 edocument_peppol_peppyrus-8.0.1
|
||||||
|
86236835bb11412b6d37c8ced082fa1a180d2abd currency_ro-8.0.2
|
||||||
|
5ae39eb506f9c845e8d1207adb2b217607e87b61 account_invoice_history-8.0.1
|
||||||
|
89ed79bf2ce8e553193cce356d47041e49527044 trytond-8.0.10
|
||||||
|
df78652af06183ec2ac46dbb5b6a39a06d77b480 tryton-8.0.9
|
||||||
|
406d434c23c186b1feac05cca32fe19afd31260d sao-8.0.10
|
||||||
|
724704395c9fcf4ec332e647d0ad7729b7d7fb9d web_shop_shopify-8.0.6
|
||||||
|
354b9fa19f9aa16b3169027a18a7f911722e5236 user_role-8.0.2
|
||||||
|
923a7156c2af9e0e0d0962d9a2f15152e689549c stock_package_shipping-8.0.2
|
||||||
|
a0032eceda21b50551ab2e7448630c8105e2a683 stock_ethanol-8.0.1
|
||||||
|
6aebf009045885b55fb4c880647bc68b560c7759 sale_supply_drop_shipment-8.0.1
|
||||||
|
23d9d2d400b07b3183421d9258f8ae895db06b97 sale_supply-8.0.1
|
||||||
|
1e39c38f31009f9a297034fe562ea4b8ada814be sale-8.0.4
|
||||||
|
0b1eddb77976e418f9c4497b80792635b2ca3a74 purchase_blanket_agreement-8.0.2
|
||||||
|
ac0f7504497c8028304631f73e31cd923d980998 purchase-8.0.2
|
||||||
|
bd500f524bab9502f67c037834ab7f41bcf7519f product_kit-8.0.3
|
||||||
|
7e3a84a52c0f50e9e4bb303cc184afb803766015 product-8.0.2
|
||||||
|
57626d22878f5f4720dcafcaaac2cbfcf8a7969e edocument_uncefact-8.0.3
|
||||||
|
6304da5d0f4f5670c5b427a06376c3e459b05654 edocument_ubl-8.0.5
|
||||||
|
e2ab66fdaf6dea092ef4d651ee0f139f7e8ab12d account_payment_sepa-8.0.3
|
||||||
|
6e6effbe6081ee6825523bc0d990b993fd99d679 account_invoice_defer-8.0.1
|
||||||
|
39b8e0615fbe0c5baabd0f6448249796e62720d0 account_invoice-8.0.2
|
||||||
|
cf94a6d82da515c43c38d4afd67dac0d232598da account_fr_chorus-8.0.1
|
||||||
|
06f702625e46db861e588dfeae45b868345a6700 sao-8.0.11
|
||||||
|
720d8c02b1c22af310ce140453c52d47e6bf11ac trytond-8.0.11
|
||||||
|
c55b90a70a053d67b31c948462a93f8ce30090c7 sao-8.0.12
|
||||||
|
5fba1625f6b57508594851bb360b4852477965f3 web_shop_shopify-8.0.7
|
||||||
|
8b5389b6d7eb08fcccbc0f28f14ac22eacab165e stock_package_shipping_ups-8.0.2
|
||||||
|
00968fd65c165746f895bb3bd2b2331407f99db8 stock-8.0.4
|
||||||
|
3e8269f02074ebaab21b92db2fe2350a6e3d2009 sale_advance_payment-8.0.1
|
||||||
|
5cd7a08cfca724fbb76c01019b3e14d407c66833 sale-8.0.5
|
||||||
|
51f90c4202b7d212b2c9925960fdcefd7d06a466 purchase_amendment-8.0.2
|
||||||
|
50ac9e6f3e6e7613afd44b36dccdea6d3301b943 purchase-8.0.3
|
||||||
|
83ed1a671773a279809f14fb9a1bc99a4c66a792 product_kit-8.0.4
|
||||||
|
72e7fe03c4e1620e403c38b2cc64ef7f8ccbcaea incoterm-8.0.1
|
||||||
|
f7802c4cd99f5d1a8e8afeed793649afac5439f5 edocument_peppol-8.0.2
|
||||||
|
2e6b024651d78bc6baff76d953d2e5ef18da8e98 document_incoming_ocr_typless-8.0.1
|
||||||
|
9bfdfe67b0c27e48b131e080341726870e2f9a43 account_payment_stripe-8.0.1
|
||||||
|
22623d7ef6b81070982632f7624e14e232e082a8 account_payment_sepa-8.0.4
|
||||||
|
1176083ab6d5dc037ee52a77d2f1509dbd6e201e account_payment-8.0.2
|
||||||
|
cb5455d12dcecfa772c91bb46712739eaa5ee8d1 account_fr_chorus-8.0.2
|
||||||
|
|||||||
Executable
+63
@@ -0,0 +1,63 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -Eeuo pipefail
|
||||||
|
|
||||||
|
required=(GITEA_URL MIRROR_REPOSITORY CUSTOM_REPOSITORY TARGET_BRANCH \
|
||||||
|
INTEGRATION_BRANCH UPDATE_BRANCH GITEA_TOKEN)
|
||||||
|
for variable in "${required[@]}"; do
|
||||||
|
if [[ -z "${!variable:-}" ]]; then
|
||||||
|
echo "Missing required environment variable: ${variable}" >&2
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
auth_header="Authorization: token ${GITEA_TOKEN}"
|
||||||
|
mirror_url="${GITEA_URL}/${MIRROR_REPOSITORY}.git"
|
||||||
|
push_url="${GITEA_URL}/${CUSTOM_REPOSITORY}.git"
|
||||||
|
|
||||||
|
git remote add upstream "${mirror_url}"
|
||||||
|
git -c "http.extraHeader=${auth_header}" fetch --no-tags upstream \
|
||||||
|
"+refs/heads/${TARGET_BRANCH}:refs/remotes/upstream/${TARGET_BRANCH}"
|
||||||
|
git fetch origin "${INTEGRATION_BRANCH}"
|
||||||
|
|
||||||
|
upstream_ref="upstream/${TARGET_BRANCH}"
|
||||||
|
base_ref="origin/${INTEGRATION_BRANCH}"
|
||||||
|
|
||||||
|
if git merge-base --is-ancestor "${upstream_ref}" "${base_ref}"; then
|
||||||
|
echo "${INTEGRATION_BRANCH} already contains the current upstream commit."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if git ls-remote --exit-code --heads origin "${UPDATE_BRANCH}" >/dev/null 2>&1; then
|
||||||
|
git fetch origin "${UPDATE_BRANCH}"
|
||||||
|
git switch --create "${UPDATE_BRANCH}" --track "origin/${UPDATE_BRANCH}"
|
||||||
|
else
|
||||||
|
git switch --create "${UPDATE_BRANCH}" "${base_ref}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Keep a reused automation branch based on the latest integration history.
|
||||||
|
# This merge is intentionally non-destructive: conflicts create an issue and
|
||||||
|
# leave every published reference untouched.
|
||||||
|
if ! git merge-base --is-ancestor "${base_ref}" HEAD; then
|
||||||
|
if ! git merge --no-edit --no-ff "${base_ref}"; then
|
||||||
|
conflicts=$(git diff --name-only --diff-filter=U | sed '/^$/d')
|
||||||
|
git merge --abort
|
||||||
|
python ci/upstream_pr.py conflict "${conflicts}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! git merge --no-edit --no-ff "${upstream_ref}"; then
|
||||||
|
conflicts=$(git diff --name-only --diff-filter=U | sed '/^$/d')
|
||||||
|
git merge --abort
|
||||||
|
python ci/upstream_pr.py conflict "${conflicts}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if git diff --quiet "origin/${UPDATE_BRANCH}" HEAD 2>/dev/null; then
|
||||||
|
echo 'The existing update branch already contains this upstream revision.'
|
||||||
|
else
|
||||||
|
git -c "http.extraHeader=${auth_header}" push "${push_url}" \
|
||||||
|
"HEAD:refs/heads/${UPDATE_BRANCH}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
python ci/upstream_pr.py pull-request "$(git rev-parse "${upstream_ref}")"
|
||||||
@@ -0,0 +1,60 @@
|
|||||||
|
import importlib.util
|
||||||
|
import os
|
||||||
|
import pathlib
|
||||||
|
import unittest
|
||||||
|
from unittest.mock import ANY, patch
|
||||||
|
|
||||||
|
|
||||||
|
SCRIPT = pathlib.Path(__file__).parents[1] / 'upstream_pr.py'
|
||||||
|
|
||||||
|
|
||||||
|
class UpstreamPullRequestTestCase(unittest.TestCase):
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def setUpClass(cls):
|
||||||
|
environment = {
|
||||||
|
'GITEA_URL': 'https://gitea.example.test',
|
||||||
|
'CUSTOM_REPOSITORY': 'tryton-do/tryton',
|
||||||
|
'GITEA_TOKEN': 'test-token',
|
||||||
|
'INTEGRATION_BRANCH': 'integration/8.0',
|
||||||
|
'UPDATE_BRANCH': 'automation/upstream-8.0',
|
||||||
|
}
|
||||||
|
with patch.dict(os.environ, environment, clear=False):
|
||||||
|
spec = importlib.util.spec_from_file_location('upstream_pr', SCRIPT)
|
||||||
|
cls.module = importlib.util.module_from_spec(spec)
|
||||||
|
spec.loader.exec_module(cls.module)
|
||||||
|
|
||||||
|
def test_reuses_existing_pull_request(self):
|
||||||
|
existing = [{
|
||||||
|
'head': {'ref': self.module.HEAD},
|
||||||
|
'base': {'ref': self.module.TARGET},
|
||||||
|
'html_url': 'https://gitea.example.test/pulls/1',
|
||||||
|
}]
|
||||||
|
with patch.object(self.module, 'open_pulls', return_value=existing), \
|
||||||
|
patch.object(self.module, 'request') as request:
|
||||||
|
self.module.ensure_pull_request('a' * 40)
|
||||||
|
request.assert_not_called()
|
||||||
|
|
||||||
|
def test_creates_pull_request_with_review_target(self):
|
||||||
|
created = {'html_url': 'https://gitea.example.test/pulls/2'}
|
||||||
|
with patch.object(self.module, 'open_pulls', return_value=[]), \
|
||||||
|
patch.object(self.module, 'request', return_value=created) as request:
|
||||||
|
self.module.ensure_pull_request('b' * 40)
|
||||||
|
request.assert_called_once_with(
|
||||||
|
'POST', '/repos/tryton-do/tryton/pulls', ANY)
|
||||||
|
payload = request.call_args.args[2]
|
||||||
|
self.assertEqual(payload['head'], 'automation/upstream-8.0')
|
||||||
|
self.assertEqual(payload['base'], 'integration/8.0')
|
||||||
|
|
||||||
|
def test_reuses_existing_conflict_issue(self):
|
||||||
|
existing = [{
|
||||||
|
'title': 'Upstream Tryton 8.0 synchronization conflict',
|
||||||
|
'html_url': 'https://gitea.example.test/issues/1',
|
||||||
|
}]
|
||||||
|
with patch.object(self.module, 'request', return_value=existing) as request:
|
||||||
|
self.module.ensure_conflict_issue('trytond/file.py')
|
||||||
|
request.assert_called_once()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
Executable
+91
@@ -0,0 +1,91 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Create an idempotent Gitea pull request or conflict issue."""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import urllib.error
|
||||||
|
import urllib.parse
|
||||||
|
import urllib.request
|
||||||
|
|
||||||
|
|
||||||
|
BASE_URL = os.environ['GITEA_URL'].rstrip('/') + '/api/v1'
|
||||||
|
REPOSITORY = os.environ['CUSTOM_REPOSITORY']
|
||||||
|
TOKEN = os.environ['GITEA_TOKEN']
|
||||||
|
TARGET = os.environ['INTEGRATION_BRANCH']
|
||||||
|
HEAD = os.environ['UPDATE_BRANCH']
|
||||||
|
|
||||||
|
|
||||||
|
def request(method: str, path: str, payload: dict | None = None):
|
||||||
|
data = json.dumps(payload).encode() if payload is not None else None
|
||||||
|
req = urllib.request.Request(
|
||||||
|
f'{BASE_URL}{path}', data=data, method=method,
|
||||||
|
headers={
|
||||||
|
'Authorization': f'token {TOKEN}',
|
||||||
|
'Accept': 'application/json',
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
})
|
||||||
|
try:
|
||||||
|
with urllib.request.urlopen(req, timeout=30) as response:
|
||||||
|
return json.load(response)
|
||||||
|
except urllib.error.HTTPError as exc:
|
||||||
|
detail = exc.read().decode(errors='replace')
|
||||||
|
raise RuntimeError(f'Gitea API returned {exc.code}: {detail}') from exc
|
||||||
|
except urllib.error.URLError as exc:
|
||||||
|
raise RuntimeError(f'Could not reach the Gitea API: {exc.reason}') from exc
|
||||||
|
|
||||||
|
|
||||||
|
def open_pulls():
|
||||||
|
query = urllib.parse.urlencode({'state': 'open', 'limit': 50})
|
||||||
|
return request('GET', f'/repos/{REPOSITORY}/pulls?{query}')
|
||||||
|
|
||||||
|
|
||||||
|
def ensure_pull_request(upstream_sha: str) -> None:
|
||||||
|
for pull in open_pulls():
|
||||||
|
if pull['head']['ref'] == HEAD and pull['base']['ref'] == TARGET:
|
||||||
|
print(f"Using existing pull request: {pull['html_url']}")
|
||||||
|
return
|
||||||
|
pull = request('POST', f'/repos/{REPOSITORY}/pulls', {
|
||||||
|
'title': f'Upstream Tryton 8.0 update ({upstream_sha[:12]})',
|
||||||
|
'head': HEAD,
|
||||||
|
'base': TARGET,
|
||||||
|
'body': (
|
||||||
|
'Automated proposal from the private official mirror.\n\n'
|
||||||
|
'Review the upstream changes and wait for all required checks. '
|
||||||
|
'This pull request must be merged manually.'),
|
||||||
|
})
|
||||||
|
print(f"Created pull request: {pull['html_url']}")
|
||||||
|
|
||||||
|
|
||||||
|
def ensure_conflict_issue(conflicts: str) -> None:
|
||||||
|
title = 'Upstream Tryton 8.0 synchronization conflict'
|
||||||
|
query = urllib.parse.urlencode({'state': 'open', 'type': 'issues', 'limit': 50})
|
||||||
|
for issue in request('GET', f'/repos/{REPOSITORY}/issues?{query}'):
|
||||||
|
if issue['title'] == title:
|
||||||
|
print(f"Conflict issue already open: {issue['html_url']}")
|
||||||
|
return
|
||||||
|
issue = request('POST', f'/repos/{REPOSITORY}/issues', {
|
||||||
|
'title': title,
|
||||||
|
'body': (
|
||||||
|
'The scheduled synchronization could not merge the latest '
|
||||||
|
'official 8.0 changes. No branch was overwritten.\n\n'
|
||||||
|
f'Conflicting paths:\n```\n{conflicts or "unknown"}\n```'),
|
||||||
|
})
|
||||||
|
print(f"Created conflict issue: {issue['html_url']}")
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> None:
|
||||||
|
if len(sys.argv) != 3:
|
||||||
|
raise SystemExit('usage: upstream_pr.py pull-request SHA | conflict PATHS')
|
||||||
|
if sys.argv[1] == 'pull-request':
|
||||||
|
ensure_pull_request(sys.argv[2])
|
||||||
|
elif sys.argv[1] == 'conflict':
|
||||||
|
ensure_conflict_issue(sys.argv[2])
|
||||||
|
else:
|
||||||
|
raise SystemExit('usage: upstream_pr.py pull-request SHA | conflict PATHS')
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
||||||
Executable
+35
@@ -0,0 +1,35 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""Validate every Gettext catalog changed or maintained in this repository."""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import sys
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
import polib
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> int:
|
||||||
|
failures: list[str] = []
|
||||||
|
catalogs = sorted(Path('.').glob('**/*.po'))
|
||||||
|
if not catalogs:
|
||||||
|
failures.append('no PO catalogs were found')
|
||||||
|
|
||||||
|
for path in catalogs:
|
||||||
|
try:
|
||||||
|
catalog = polib.pofile(path, check_for_duplicates=True)
|
||||||
|
except (OSError, UnicodeError, ValueError) as exc:
|
||||||
|
failures.append(f'{path}: {exc}')
|
||||||
|
continue
|
||||||
|
if not catalog.metadata.get('Content-Type', '').startswith('text/plain'):
|
||||||
|
failures.append(f'{path}: missing or invalid Content-Type metadata')
|
||||||
|
|
||||||
|
if failures:
|
||||||
|
print('\n'.join(failures), file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
print(f'Validated {len(catalogs)} PO catalogs')
|
||||||
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
raise SystemExit(main())
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
include CHANGELOG
|
|
||||||
include COPYRIGHT
|
|
||||||
include LICENSE
|
|
||||||
include README.rst
|
|
||||||
include icons/LICENSE
|
|
||||||
graft doc
|
|
||||||
@@ -43,7 +43,7 @@ def get_info():
|
|||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
{%- if not cookiecutter.prefix %}
|
{%- if not cookiecutter.prefix %}
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|||||||
@@ -68,14 +68,14 @@ dev-mode-dirs = ["."]
|
|||||||
|
|
||||||
[tool.hatch.build.targets.wheel.sources]
|
[tool.hatch.build.targets.wheel.sources]
|
||||||
{%- if cookiecutter.prefix %}
|
{%- if cookiecutter.prefix %}
|
||||||
"" = "{{ cookiecutter.module_name }}"
|
"" = "{{ cookiecutter.package_name }}"
|
||||||
{%- else %}
|
{%- else %}
|
||||||
"" = "trytond/modules/{{ cookiecutter.module_name }}"
|
"" = "trytond/modules/{{ cookiecutter.module_name }}"
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
[tool.hatch.metadata.hooks.tryton]
|
[tool.hatch.metadata.hooks.tryton]
|
||||||
{%- if cookiecutter.prefix %}
|
{%- if cookiecutter.prefix %}
|
||||||
prefix = {}
|
prefixes = {}
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
dependencies = []
|
dependencies = []
|
||||||
copyright = 'COPYRIGHT'
|
copyright = 'COPYRIGHT'
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ changedir = {env_site_packages_dir}
|
|||||||
extras = test
|
extras = test
|
||||||
commands =
|
commands =
|
||||||
{%- if cookiecutter.prefix %}
|
{%- if cookiecutter.prefix %}
|
||||||
coverage run --rcfile={toxinidir}/tox.ini --source={{ cookiecutter.module_name }} --omit=*/tests/* -m xmlrunner discover -s {{ cookiecutter.module_name }} {posargs}
|
coverage run --rcfile={toxinidir}/tox.ini --source={{ cookiecutter.package_name }} --omit=*/tests/* -m xmlrunner discover -s {{ cookiecutter.package_name }} {posargs}
|
||||||
{%- else %}
|
{%- else %}
|
||||||
coverage run --rcfile={toxinidir}/tox.ini --source=trytond.modules.{{ cookiecutter.module_name }} --omit=*/tests/* -m xmlrunner discover -s trytond.modules.{{ cookiecutter.module_name }} {posargs}
|
coverage run --rcfile={toxinidir}/tox.ini --source=trytond.modules.{{ cookiecutter.module_name }} --omit=*/tests/* -m xmlrunner discover -s trytond.modules.{{ cookiecutter.module_name }} {posargs}
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
@@ -16,7 +16,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
+1
-1
@@ -26,7 +26,7 @@ def activate_modules(config, modules):
|
|||||||
for module in modules:
|
for module in modules:
|
||||||
if module.state == 'activated':
|
if module.state == 'activated':
|
||||||
module.click('upgrade')
|
module.click('upgrade')
|
||||||
elif module.state != 'not activated':
|
elif module.state == 'not activated':
|
||||||
module.click('activate')
|
module.click('activate')
|
||||||
modules = [x.name for x in Module.find([('state', '=', 'to activate')])]
|
modules = [x.name for x in Module.find([('state', '=', 'to activate')])]
|
||||||
Wizard('ir.module.activate_upgrade').execute('upgrade')
|
Wizard('ir.module.activate_upgrade').execute('upgrade')
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ def setup(config, modules, company):
|
|||||||
payments = random.sample(payments, len(payments) * 2 // 3)
|
payments = random.sample(payments, len(payments) * 2 // 3)
|
||||||
|
|
||||||
for payment in payments:
|
for payment in payments:
|
||||||
|
payment.click('submit')
|
||||||
payment.click('approve')
|
payment.click('approve')
|
||||||
|
|
||||||
payments = random.sample(payments, len(payments) * 2 // 3)
|
payments = random.sample(payments, len(payments) * 2 // 3)
|
||||||
|
|||||||
+1
-1
@@ -41,7 +41,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
info['modules'] = [
|
info['modules'] = [
|
||||||
|
|||||||
+2
-1
@@ -79,9 +79,10 @@ After
|
|||||||
])
|
])
|
||||||
|
|
||||||
for mandate in mandates:
|
for mandate in mandates:
|
||||||
mandate.address = mandate.on_change_party()
|
mandate.on_change_party()
|
||||||
|
|
||||||
Mandate.save(mandates)
|
Mandate.save(mandates)
|
||||||
|
transaction.commit()
|
||||||
|
|
||||||
.. _migration-7.6:
|
.. _migration-7.6:
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,85 @@
|
|||||||
|
# Tryton private mirror and customization operations
|
||||||
|
|
||||||
|
## Repository roles
|
||||||
|
|
||||||
|
- `tryton-do/tryton-mirror` is a private pull mirror of
|
||||||
|
`https://github.com/tryton/tryton`. Never develop or create custom references
|
||||||
|
in this repository.
|
||||||
|
- `tryton-do/tryton` preserves the upstream history and contains reviewed local
|
||||||
|
changes.
|
||||||
|
|
||||||
|
## Branches
|
||||||
|
|
||||||
|
- `8.0`: protected production branch for the 8.0 LTS series.
|
||||||
|
- `integration/8.0`: protected target for automated upstream proposals.
|
||||||
|
- `feature/*`: short-lived application changes.
|
||||||
|
- `translation/*`: short-lived translation changes.
|
||||||
|
- `8.2`: evaluation branch for the current non-LTS series; it is not deployed.
|
||||||
|
- `automation/upstream-8.0`: bot-managed, fast-forward-only proposal branch.
|
||||||
|
|
||||||
|
Production changes flow through `translation/*` or `feature/*` into
|
||||||
|
`integration/8.0`, then through a second reviewed pull request into `8.0`.
|
||||||
|
Direct pushes and force pushes to the protected branches are forbidden.
|
||||||
|
|
||||||
|
## Remotes for developers
|
||||||
|
|
||||||
|
```console
|
||||||
|
git remote add origin https://code.unpaismejor.org.do/tryton-do/tryton.git
|
||||||
|
git remote add mirror https://code.unpaismejor.org.do/tryton-do/tryton-mirror.git
|
||||||
|
git remote add upstream https://github.com/tryton/tryton.git
|
||||||
|
```
|
||||||
|
|
||||||
|
Gitea Actions uses its short-lived, repository-scoped `GITEA_TOKEN`. The
|
||||||
|
organization grants that token read-only cross-repository access to
|
||||||
|
`tryton-mirror`; no long-lived personal access token is stored. The GitHub
|
||||||
|
`upstream` remote is for diagnostics and disaster recovery.
|
||||||
|
|
||||||
|
## Translation workflow
|
||||||
|
|
||||||
|
The Tryton server owns `es_DO` as a standalone language; its database record
|
||||||
|
does not declare `es_419` (or any other locale) as parent. Complete Dominican
|
||||||
|
translations live beside each package in its regular `locale/es_DO.po`
|
||||||
|
catalog. The initial catalogs were bootstrapped from `es_419`, but they are now
|
||||||
|
independent and Dominican terminology is maintained directly in them. There is
|
||||||
|
no duplicated localization module or runtime dependency on one.
|
||||||
|
|
||||||
|
Weblate must push through a dedicated `translation/weblate-8.0` branch and a
|
||||||
|
reviewed pull request to `integration/8.0`; it must never push directly to a
|
||||||
|
protected branch. Gitea sends push notifications to
|
||||||
|
`https://translate.tryton.org.do/hooks/gitea/` so Weblate can pull source
|
||||||
|
changes promptly. CI validates every PO catalog and the server package before
|
||||||
|
the pull request can be merged.
|
||||||
|
|
||||||
|
When a catalog changes, update the database with:
|
||||||
|
|
||||||
|
```console
|
||||||
|
trytond-admin -d DATABASE --all --activate-dependencies
|
||||||
|
```
|
||||||
|
|
||||||
|
Activate Spanish (Dominican Republic) as a translatable language, then update
|
||||||
|
the activated modules to import any new `es_DO.po` catalogs delivered by
|
||||||
|
Weblate. Activating Spanish (Latin American) is not required for `es_DO`.
|
||||||
|
|
||||||
|
## Resolving an upstream conflict
|
||||||
|
|
||||||
|
1. Fetch `mirror/8.0` and the target branch.
|
||||||
|
2. Create a new `feature/upstream-conflict-YYYYMMDD` branch from
|
||||||
|
`integration/8.0`.
|
||||||
|
3. Merge `mirror/8.0` without rebasing published custom commits.
|
||||||
|
4. Resolve only the reported paths, run CI locally, and push the branch.
|
||||||
|
5. Open a reviewed pull request into `integration/8.0`.
|
||||||
|
6. Close the automation conflict issue only after the pull request is merged.
|
||||||
|
|
||||||
|
Never force-push an integration, production, or automation branch.
|
||||||
|
|
||||||
|
## Recovery
|
||||||
|
|
||||||
|
If the native mirror stops updating, keep `tryton` unchanged, inspect the
|
||||||
|
mirror synchronization error, and trigger a manual mirror update. If the
|
||||||
|
mirror repository is unrecoverable, create a new private pull mirror under a
|
||||||
|
temporary name, verify branches and tags against GitHub, and only then update
|
||||||
|
the workflow repository URL and cross-repository allowlist. Do not delete the
|
||||||
|
previous mirror until the replacement is verified.
|
||||||
|
|
||||||
|
If an integration proposal is wrong, close its pull request and delete only
|
||||||
|
its `automation/*` branch. Protected branches and their history remain intact.
|
||||||
@@ -1,4 +1,19 @@
|
|||||||
|
|
||||||
|
Version 8.0.3 - 2026-07-15
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
|
Version 8.0.2 - 2026-07-01
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
|
Version 8.0.1 - 2026-06-18
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
Version 8.0.0 - 2026-04-20
|
Version 8.0.0 - 2026-04-20
|
||||||
--------------------------
|
--------------------------
|
||||||
* Bug fixes (see mercurial logs for details)
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|||||||
@@ -1347,7 +1347,7 @@ class Account(
|
|||||||
childs = [self]
|
childs = [self]
|
||||||
while childs:
|
while childs:
|
||||||
for child in childs:
|
for child in childs:
|
||||||
if not child.template:
|
if not child.template or child.template_override:
|
||||||
continue
|
continue
|
||||||
values = {}
|
values = {}
|
||||||
tax_ids = [template2tax[x.id] for x in child.template.taxes
|
tax_ids = [template2tax[x.id] for x in child.template.taxes
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -521,8 +521,8 @@
|
|||||||
<text:p text:style-name="Table_20_Heading">Date:<text:line-break/> <text:placeholder text:placeholder-type="text"><format_date(move.date, user.language)></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Heading">Date:<text:line-break/> <text:placeholder text:placeholder-type="text"><format_date(move.date, user.language)></text:placeholder></text:p>
|
||||||
</table:table-cell>
|
</table:table-cell>
|
||||||
<table:table-cell table:style-name="Table4.C1" office:value-type="string">
|
<table:table-cell table:style-name="Table4.C1" office:value-type="string">
|
||||||
<text:p text:style-name="Table_20_Heading"><text:placeholder text:placeholder-type="text"><if test="move.origin"></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Heading"><text:placeholder text:placeholder-type="text"><if test="move.origin and hasattr(move.origin, 'rec_name')"></text:placeholder></text:p>
|
||||||
<text:p text:style-name="Table_20_Heading">Origin:<text:line-break/><text:placeholder text:placeholder-type="text"><getattr(move.origin, 'rec_name', '')></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Heading">Origin:<text:line-break/><text:placeholder text:placeholder-type="text"><move.origin.rec_name></text:placeholder></text:p>
|
||||||
<text:p text:style-name="Table_20_Heading"><text:placeholder text:placeholder-type="text"></if></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Heading"><text:placeholder text:placeholder-type="text"></if></text:placeholder></text:p>
|
||||||
</table:table-cell>
|
</table:table-cell>
|
||||||
<table:table-cell table:style-name="Table4.D1" table:number-columns-spanned="2" office:value-type="string">
|
<table:table-cell table:style-name="Table4.D1" table:number-columns-spanned="2" office:value-type="string">
|
||||||
|
|||||||
@@ -913,7 +913,7 @@
|
|||||||
<text:p text:style-name="Table_20_Contents"><text:placeholder text:placeholder-type="text"><line.description or ''></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Contents"><text:placeholder text:placeholder-type="text"><line.description or ''></text:placeholder></text:p>
|
||||||
</table:table-cell>
|
</table:table-cell>
|
||||||
<table:table-cell table:style-name="Lines.G6" office:value-type="string">
|
<table:table-cell table:style-name="Lines.G6" office:value-type="string">
|
||||||
<text:p text:style-name="Table_20_Contents"><text:placeholder text:placeholder-type="text"><getattr(line.origin, 'rec_name', '')></text:placeholder></text:p>
|
<text:p text:style-name="Table_20_Contents"><text:placeholder text:placeholder-type="text"><line.origin and line.origin.rec_name or ''></text:placeholder></text:p>
|
||||||
</table:table-cell>
|
</table:table-cell>
|
||||||
</table:table-row>
|
</table:table-row>
|
||||||
<text:soft-page-break/>
|
<text:soft-page-break/>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1400,7 +1400,7 @@ class Line(DescriptionOriginMixin, MoveLineMixin, ModelSQL, ModelView):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_fields(cls, lines, field_names):
|
def validate_fields(cls, lines, field_names):
|
||||||
super().validate(lines)
|
super().validate_fields(lines, field_names)
|
||||||
cls.check_account(lines, field_names)
|
cls.check_account(lines, field_names)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -1573,8 +1573,9 @@ class Line(DescriptionOriginMixin, MoveLineMixin, ModelSQL, ModelView):
|
|||||||
('company', '=', company),
|
('company', '=', company),
|
||||||
('journal', '=', journal),
|
('journal', '=', journal),
|
||||||
])
|
])
|
||||||
|
toolbar = dict(toolbar)
|
||||||
|
action = list(toolbar['action'])
|
||||||
for template in templates:
|
for template in templates:
|
||||||
action = toolbar['action']
|
|
||||||
# Use template id for action id to auto-select the template
|
# Use template id for action id to auto-select the template
|
||||||
action.append({
|
action.append({
|
||||||
'name': template.name,
|
'name': template.name,
|
||||||
@@ -1582,6 +1583,7 @@ class Line(DescriptionOriginMixin, MoveLineMixin, ModelSQL, ModelView):
|
|||||||
'wiz_name': 'account.move.template.create',
|
'wiz_name': 'account.move.template.create',
|
||||||
'id': template.id,
|
'id': template.id,
|
||||||
})
|
})
|
||||||
|
toolbar['action'] = action
|
||||||
return toolbar
|
return toolbar
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -2030,14 +2032,17 @@ class OpenJournal(Wizard):
|
|||||||
('period', '=', period.id),
|
('period', '=', period.id),
|
||||||
], limit=1)
|
], limit=1)
|
||||||
if not journal_periods:
|
if not journal_periods:
|
||||||
|
with Transaction().new_transaction():
|
||||||
journal_period, = JournalPeriod.create([{
|
journal_period, = JournalPeriod.create([{
|
||||||
'journal': journal.id,
|
'journal': journal.id,
|
||||||
'period': period.id,
|
'period': period.id,
|
||||||
}])
|
}])
|
||||||
|
name = journal_period.rec_name
|
||||||
else:
|
else:
|
||||||
journal_period, = journal_periods
|
journal_period, = journal_periods
|
||||||
|
name = journal_period.rec_name
|
||||||
|
|
||||||
action['name'] += ' (%s)' % journal_period.rec_name
|
action['name'] += ' (%s)' % name
|
||||||
action['pyson_domain'] = PYSONEncoder().encode([
|
action['pyson_domain'] = PYSONEncoder().encode([
|
||||||
('journal', '=', journal.id),
|
('journal', '=', journal.id),
|
||||||
('period', '=', period.id),
|
('period', '=', period.id),
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ from itertools import cycle, groupby
|
|||||||
|
|
||||||
from sql import Literal
|
from sql import Literal
|
||||||
from sql.aggregate import Sum
|
from sql.aggregate import Sum
|
||||||
from sql.conditionals import Case
|
from sql.conditionals import Case, Coalesce
|
||||||
|
|
||||||
from trytond import backend
|
from trytond import backend
|
||||||
from trytond.i18n import gettext
|
from trytond.i18n import gettext
|
||||||
@@ -164,7 +164,7 @@ class TaxCode(
|
|||||||
super().__setup__()
|
super().__setup__()
|
||||||
t = cls.__table__()
|
t = cls.__table__()
|
||||||
cls._sql_indexes.add(
|
cls._sql_indexes.add(
|
||||||
Index(t, (t.code, Index.Similarity())))
|
Index(t, (Coalesce(t.code, ''), Index.Similarity())))
|
||||||
for date in [cls.start_date, cls.end_date]:
|
for date in [cls.start_date, cls.end_date]:
|
||||||
date.states = {
|
date.states = {
|
||||||
'readonly': (Bool(Eval('template', -1))
|
'readonly': (Bool(Eval('template', -1))
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.4
|
||||||
depends:
|
depends:
|
||||||
company
|
company
|
||||||
currency
|
currency
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,864 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.account.type,fixed_asset:"
|
||||||
|
msgid "Fixed Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.account.type.template,fixed_asset:"
|
||||||
|
msgid "Fixed Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,account_journal:"
|
||||||
|
msgid "Journal"
|
||||||
|
msgstr "Libro diario"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,comment:"
|
||||||
|
msgid "Comment"
|
||||||
|
msgstr "Comentario"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr "Decimales de la moneda"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,customer_invoice_line:"
|
||||||
|
msgid "Customer Invoice Line"
|
||||||
|
msgstr "Línea de factura de cliente"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset,depreciated_amount:"
|
||||||
|
msgid "Depreciated Amount"
|
||||||
|
msgstr "Cuenta de depreciación"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset,depreciating_value:"
|
||||||
|
msgid "Depreciating Value"
|
||||||
|
msgstr "Depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,depreciation_method:"
|
||||||
|
msgid "Depreciation Method"
|
||||||
|
msgstr "Método de depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,end_date:"
|
||||||
|
msgid "End Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,frequency:"
|
||||||
|
msgid "Frequency"
|
||||||
|
msgstr "Frecuencia"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,lines:"
|
||||||
|
msgid "Lines"
|
||||||
|
msgstr "Líneas"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,move:"
|
||||||
|
msgid "Account Move"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,number:"
|
||||||
|
msgid "Number"
|
||||||
|
msgstr "Número"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,product:"
|
||||||
|
msgid "Product"
|
||||||
|
msgstr "Producto"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,purchase_date:"
|
||||||
|
msgid "Purchase Date"
|
||||||
|
msgstr "Fecha de compra"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,quantity:"
|
||||||
|
msgid "Quantity"
|
||||||
|
msgstr "Cantidad"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,residual_value:"
|
||||||
|
msgid "Residual Value"
|
||||||
|
msgstr "Valor residual"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,revisions:"
|
||||||
|
msgid "Revisions"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,start_date:"
|
||||||
|
msgid "Start Date"
|
||||||
|
msgstr "Fecha inicial"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,state:"
|
||||||
|
msgid "State"
|
||||||
|
msgstr "Estado"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,supplier_invoice_line:"
|
||||||
|
msgid "Supplier Invoice Line"
|
||||||
|
msgstr "Línea de factura de proveedor"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,unit:"
|
||||||
|
msgid "Unit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,update_moves:"
|
||||||
|
msgid "Update Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset,value:"
|
||||||
|
msgid "Value"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset-update-account.move,asset:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset-update-account.move,move:"
|
||||||
|
msgid "Move"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.create_moves.start,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,accumulated_depreciation:"
|
||||||
|
msgid "Accumulated Depreciation"
|
||||||
|
msgstr "Depreciación acumulada"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,acquired_value:"
|
||||||
|
msgid "Acquired Value"
|
||||||
|
msgstr "Valor de adquisición"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,actual_value:"
|
||||||
|
msgid "Actual Value"
|
||||||
|
msgstr "Valor actual"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,asset:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.line,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr "Decimales de la moneda"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,depreciable_basis:"
|
||||||
|
msgid "Depreciable Basis"
|
||||||
|
msgstr "Base de depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,depreciation:"
|
||||||
|
msgid "Depreciation"
|
||||||
|
msgstr "Depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.line,move:"
|
||||||
|
msgid "Account Move"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.print_depreciation_table.start,end_date:"
|
||||||
|
msgid "End Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.print_depreciation_table.start,start_date:"
|
||||||
|
msgid "Start Date"
|
||||||
|
msgstr "Fecha inicial"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.revision,asset:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.revision,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr "Decimales de la moneda"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.revision,description:"
|
||||||
|
msgid "Description"
|
||||||
|
msgstr "Depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.revision,end_date:"
|
||||||
|
msgid "End Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.revision,origin:"
|
||||||
|
msgid "Origin"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.revision,residual_value:"
|
||||||
|
msgid "Residual Value"
|
||||||
|
msgstr "Valor residual"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.asset.revision,value:"
|
||||||
|
msgid "Asset Value"
|
||||||
|
msgstr "Valor de activo fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,counterpart_account:"
|
||||||
|
msgid "Counterpart Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,depreciation_account:"
|
||||||
|
msgid "Depreciation Account"
|
||||||
|
msgstr "Cuenta de depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,latest_move_date:"
|
||||||
|
msgid "Latest Move Date"
|
||||||
|
msgstr "Última fecha de asiento"
|
||||||
|
|
||||||
|
msgctxt "field:account.asset.update.show_depreciation,next_depreciation_date:"
|
||||||
|
msgid "Next Depreciation Date"
|
||||||
|
msgstr "Siguiente fecha de depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,asset_bymonth:"
|
||||||
|
msgid "Month"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,asset_bymonthday:"
|
||||||
|
msgid "Day of the Month"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration,asset_frequency:"
|
||||||
|
msgid "Asset Depreciation Frequency"
|
||||||
|
msgstr "Tabla de depreciación de activo fijo - Inicio"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration,asset_sequence:"
|
||||||
|
msgid "Asset Sequence"
|
||||||
|
msgstr "Secuencia de activo fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "Month"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.asset_date,asset_bymonthday:"
|
||||||
|
msgid "Day of the Month"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration.asset_date,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration.asset_frequency,asset_frequency:"
|
||||||
|
msgid "Asset Depreciation Frequency"
|
||||||
|
msgstr "Tabla de depreciación de activo fijo - Inicio"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration.asset_frequency,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration.asset_sequence,asset_sequence:"
|
||||||
|
msgid "Asset Reference Sequence"
|
||||||
|
msgstr "Secuencia de activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.configuration.asset_sequence,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.line,asset:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.line,is_assets_depreciable:"
|
||||||
|
msgid "Is Assets depreciable"
|
||||||
|
msgstr "Es activo fijo depreciable"
|
||||||
|
|
||||||
|
msgctxt "field:product.category,account_asset:"
|
||||||
|
msgid "Account Asset"
|
||||||
|
msgstr "Cuenta de activo fijo"
|
||||||
|
|
||||||
|
msgctxt "field:product.category,account_depreciation:"
|
||||||
|
msgid "Account Depreciation"
|
||||||
|
msgstr "Cuenta de depreciación"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:product.category.account,account_asset:"
|
||||||
|
msgid "Account Asset"
|
||||||
|
msgstr "Cuenta de activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:product.category.account,account_depreciation:"
|
||||||
|
msgid "Account Depreciation"
|
||||||
|
msgstr "Cuenta de depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:product.product,depreciable:"
|
||||||
|
msgid "Depreciable"
|
||||||
|
msgstr "Depreciable"
|
||||||
|
|
||||||
|
msgctxt "field:product.product,depreciation_duration:"
|
||||||
|
msgid "Depreciation Duration"
|
||||||
|
msgstr "Duración de la depreciación"
|
||||||
|
|
||||||
|
msgctxt "field:product.template,depreciable:"
|
||||||
|
msgid "Depreciable"
|
||||||
|
msgstr "Depreciable"
|
||||||
|
|
||||||
|
msgctxt "field:product.template,depreciation_duration:"
|
||||||
|
msgid "Depreciation Duration"
|
||||||
|
msgstr "Duración de la depreciación"
|
||||||
|
|
||||||
|
msgctxt "help:account.asset,depreciated_amount:"
|
||||||
|
msgid "The amount already depreciated at the start date."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.asset,depreciating_value:"
|
||||||
|
msgid "The value of the asset at the start date."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.asset,value:"
|
||||||
|
msgid "The value of the asset when purchased."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.asset.update.show_depreciation,date:"
|
||||||
|
msgid ""
|
||||||
|
"The date must be between the last update/depreciation date and the next "
|
||||||
|
"depreciation date."
|
||||||
|
msgstr ""
|
||||||
|
"La fecha debe estar entre la última fecha de actualización/depreciación y la"
|
||||||
|
" siguiente fecha de depreciación."
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,asset_bymonth:"
|
||||||
|
msgid "The month to create the depreciation moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,asset_bymonthday:"
|
||||||
|
msgid "The day of the month to create the depreciation moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,asset_frequency:"
|
||||||
|
msgid "The default depreciation frequency for new assets."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "The month to create the depreciation moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration.asset_date,asset_bymonthday:"
|
||||||
|
msgid "The day of the month to create the depreciation moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration.asset_frequency,asset_frequency:"
|
||||||
|
msgid "The default depreciation frequency for new assets."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:product.product,depreciation_duration:"
|
||||||
|
msgid "In months"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:product.template,depreciation_duration:"
|
||||||
|
msgid "In months"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset,string:"
|
||||||
|
msgid "Account Asset"
|
||||||
|
msgstr "Cuenta de activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset-update-account.move,string:"
|
||||||
|
msgid "Account Asset - Update - Account Move"
|
||||||
|
msgstr "Activo fijo - Actualizar - Asiento"
|
||||||
|
|
||||||
|
msgctxt "model:account.asset.create_moves.start,string:"
|
||||||
|
msgid "Account Asset Create Moves Start"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset.line,string:"
|
||||||
|
msgid "Account Asset Line"
|
||||||
|
msgstr "Cuenta de activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset.print_depreciation_table.start,string:"
|
||||||
|
msgid "Account Asset Print Depreciation Table Start"
|
||||||
|
msgstr "Tabla de depreciación de activo fijo - Inicio"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset.revision,string:"
|
||||||
|
msgid "Account Asset Revision"
|
||||||
|
msgstr "Línea de activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.asset.update.show_depreciation,string:"
|
||||||
|
msgid "Account Asset Update Show Depreciation"
|
||||||
|
msgstr "Actualizar activo fijo - Mostrar depreciación"
|
||||||
|
|
||||||
|
msgctxt "model:account.configuration.asset_date,string:"
|
||||||
|
msgid "Account Configuration Asset Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.configuration.asset_frequency,string:"
|
||||||
|
msgid "Account Configuration Asset Frequency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.configuration.asset_sequence,string:"
|
||||||
|
msgid "Account Configuration Asset Sequence"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.journal,name:journal_asset"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_asset_form"
|
||||||
|
msgid "Assets"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:report_depreciation_table"
|
||||||
|
msgid "Depreciation Table"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:wizard_create_moves"
|
||||||
|
msgid "Create Assets Moves"
|
||||||
|
msgstr "Crear asientos de activo fijo hasta"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:wizard_print_depreciation_table"
|
||||||
|
msgid "Print Depreciation Table"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:wizard_update"
|
||||||
|
msgid "Update Asset"
|
||||||
|
msgstr "Actuzalizar activo fijo"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_all"
|
||||||
|
msgid "All"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_closed"
|
||||||
|
msgid "Closed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_draft"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_asset_form_domain_running"
|
||||||
|
msgid "Running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_close_invoice_line_missing_account"
|
||||||
|
msgid ""
|
||||||
|
"To close asset \"%(asset)s\" you must configure a replacement account for "
|
||||||
|
"\"%(account)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_close_product_account_asset"
|
||||||
|
msgid ""
|
||||||
|
"To close asset \"%(asset)s\" you must configure an account asset for the "
|
||||||
|
"product \"%(product)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_delete_draft"
|
||||||
|
msgid "You cannot delete asset \"%(asset)s\" because it is not in \"draft\" state."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_draft_lines"
|
||||||
|
msgid "You cannot reset to draft asset \"%(asset)s\" because it has lines."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_invoice_line_unique"
|
||||||
|
msgid "Invoice line can be used only once on asset."
|
||||||
|
msgstr ""
|
||||||
|
"La línea de factura de proveedor puede ser utilizada una sola vez en un "
|
||||||
|
"activo."
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_asset_running_close_period"
|
||||||
|
msgid ""
|
||||||
|
"You cannot close period \"%(period)s\" because some assets \"%(assets)s\" "
|
||||||
|
"still have lines without move."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.message,text:msg_invoice_line_asset_unique"
|
||||||
|
msgid "Asset can be used only once on invoice line."
|
||||||
|
msgstr "El activo sólo se puede usar una vez en la línea de factura."
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_no_assets"
|
||||||
|
msgid "There is no started asset."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_purchase_product_missing_account_asset"
|
||||||
|
msgid ""
|
||||||
|
"To invoice purchase \"%(purchase)s\", you must set an account asset on "
|
||||||
|
"product \"%(product)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.message,text:msg_revision_asset_origin_unique"
|
||||||
|
msgid "A revision origin can be used only once per asset."
|
||||||
|
msgstr ""
|
||||||
|
"La línea de factura de proveedor puede ser utilizada una sola vez en un "
|
||||||
|
"activo."
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,confirm:asset_close_button"
|
||||||
|
msgid "Are you sure you want to close the asset?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:asset_clear_lines_button"
|
||||||
|
msgid "Clear Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:asset_close_button"
|
||||||
|
msgid "Close"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:asset_create_lines_button"
|
||||||
|
msgid "Create Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:asset_draft_button"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:asset_run_button"
|
||||||
|
msgid "Run"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.model.button,string:asset_update_button"
|
||||||
|
msgid "Update Asset"
|
||||||
|
msgstr "Actuzalizar activo fijo"
|
||||||
|
|
||||||
|
msgctxt "model:ir.rule.group,name:rule_group_asset_companies"
|
||||||
|
msgid "User in companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.sequence,name:sequence_asset"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.sequence.type,name:sequence_type_asset"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_asset"
|
||||||
|
msgid "Assets"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_asset_form"
|
||||||
|
msgid "Assets"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_create_depreciation_table"
|
||||||
|
msgid "Print Depreciation Table"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_create_moves"
|
||||||
|
msgid "Create Assets Moves"
|
||||||
|
msgstr "Crear asientos de activo fijo hasta"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "("
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid ")"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "+"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "-"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Actual Value"
|
||||||
|
msgstr "Valor real"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Amortization"
|
||||||
|
msgstr "Depreciación"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Amortization Table"
|
||||||
|
msgstr "Tabla de depreciación"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Assets"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Closing Value"
|
||||||
|
msgstr "Valor de cierre"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Company:"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Fixed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "From:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Print Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "To:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "Total -"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "User:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.asset.depreciation_table:"
|
||||||
|
msgid "at"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,depreciation_method:"
|
||||||
|
msgid "Linear"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,frequency:"
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,frequency:"
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,state:"
|
||||||
|
msgid "Closed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,state:"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.asset,state:"
|
||||||
|
msgid "Running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "April"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "August"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "December"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "February"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "January"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "July"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "June"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "March"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "May"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "November"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "October"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonth:"
|
||||||
|
msgid "September"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonthday:"
|
||||||
|
msgid "First"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,asset_bymonthday:"
|
||||||
|
msgid "Last"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "April"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "August"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "December"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "February"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "January"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "July"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "June"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "March"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "May"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "November"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "October"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonth:"
|
||||||
|
msgid "September"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonthday:"
|
||||||
|
msgid "First"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration.asset_date,asset_bymonthday:"
|
||||||
|
msgid "Last"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "selection:account.journal,type:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo Fijo"
|
||||||
|
|
||||||
|
msgctxt "view:account.asset.create_moves.start:"
|
||||||
|
msgid "Create Assets Moves up to"
|
||||||
|
msgstr "Crear asientos de activo fijo hasta"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "view:account.asset:"
|
||||||
|
msgid "Lines"
|
||||||
|
msgstr "Líneas"
|
||||||
|
|
||||||
|
msgctxt "view:account.asset:"
|
||||||
|
msgid "Other Info"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Asset"
|
||||||
|
msgstr "Activo fijo"
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Asset Move"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Depreciation Frequency"
|
||||||
|
msgstr "Cuenta de depreciación"
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Sequence"
|
||||||
|
msgstr "Secuencia"
|
||||||
|
|
||||||
|
msgctxt "view:product.template:"
|
||||||
|
msgid "Depreciation"
|
||||||
|
msgstr "Depreciación"
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.create_moves,start,create_moves:"
|
||||||
|
msgid "OK"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.create_moves,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.print_depreciation_table,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.print_depreciation_table,start,print_:"
|
||||||
|
msgid "Print"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.update,show_move,create_move:"
|
||||||
|
msgid "OK"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.update,show_move,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.update,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.asset.update,start,update_asset:"
|
||||||
|
msgid "OK"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
ir
|
ir
|
||||||
res
|
res
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer,company_tax_identifier:"
|
||||||
|
msgid "Company Tax Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer,party_tax_identifier:"
|
||||||
|
msgid "Party Tax Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer,turnover:"
|
||||||
|
msgid "Turnover"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer,vat:"
|
||||||
|
msgid "VAT"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer.context,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.be.vat_customer.context,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.be.vat_customer,string:"
|
||||||
|
msgid "Account Be Vat Customer"
|
||||||
|
msgstr "Belgium VAT Customer"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.be.vat_customer.context,string:"
|
||||||
|
msgid "Account Be Vat Customer Context"
|
||||||
|
msgstr "Belgium VAT Customer"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_vat_customer_form"
|
||||||
|
msgid "Belgian VAT Customer"
|
||||||
|
msgstr "Belgium VAT Customer"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_vat_customer"
|
||||||
|
msgid "Belgian VAT Customer"
|
||||||
|
msgstr "Belgium VAT Customer"
|
||||||
|
|
||||||
|
msgctxt "selection:account.invoice,supplier_payment_reference_type:"
|
||||||
|
msgid "Belgian structured communication"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.payment,reference_type:"
|
||||||
|
msgid "Belgian structured communication"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_eu
|
account_eu
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,372 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.budget,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget,lines:"
|
||||||
|
msgid "Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget,root_lines:"
|
||||||
|
msgid "Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.context,budget:"
|
||||||
|
msgid "Budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.context,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.context,periods:"
|
||||||
|
msgid "Periods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.context,posted:"
|
||||||
|
msgid "Posted"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.copy.start,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.copy.start,factor:"
|
||||||
|
msgid "Factor"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.copy.start,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.copy.start,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,account:"
|
||||||
|
msgid "Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,account_type:"
|
||||||
|
msgid "Account Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,actual_amount:"
|
||||||
|
msgid "Actual Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,budget:"
|
||||||
|
msgid "Budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,children:"
|
||||||
|
msgid "Children"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,current_name:"
|
||||||
|
msgid "Current Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,left:"
|
||||||
|
msgid "Left"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,parent:"
|
||||||
|
msgid "Parent"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,parent_account_type:"
|
||||||
|
msgid "Parent Account Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,percentage:"
|
||||||
|
msgid "Percentage"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,periods:"
|
||||||
|
msgid "Periods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,right:"
|
||||||
|
msgid "Right"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line,total_amount:"
|
||||||
|
msgid "Total Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.create_periods.start,method:"
|
||||||
|
msgid "Method"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,actual_amount:"
|
||||||
|
msgid "Actual Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,budget_line:"
|
||||||
|
msgid "Budget Line"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,percentage:"
|
||||||
|
msgid "Percentage"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,period:"
|
||||||
|
msgid "Period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,ratio:"
|
||||||
|
msgid "Ratio"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.budget.line.period,total_amount:"
|
||||||
|
msgid "Total Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget,company:"
|
||||||
|
msgid "The company that the budget is associated with."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget,fiscalyear:"
|
||||||
|
msgid "The fiscal year the budget applies to."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.context,posted:"
|
||||||
|
msgid "Only include posted moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.copy.start,factor:"
|
||||||
|
msgid "The percentage to apply to the budget line amounts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.copy.start,fiscalyear:"
|
||||||
|
msgid "The fiscal year during which the new budget will apply."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,account:"
|
||||||
|
msgid "The account the budget applies to."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,account_type:"
|
||||||
|
msgid "The account type the budget applies to."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,actual_amount:"
|
||||||
|
msgid "The total amount booked against the budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,amount:"
|
||||||
|
msgid "The amount allocated to the budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,children:"
|
||||||
|
msgid "Used to add structure below the budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,parent:"
|
||||||
|
msgid "Used to add structure above the budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,percentage:"
|
||||||
|
msgid "The percentage of booked amount of the budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,periods:"
|
||||||
|
msgid "The periods that contain details of the budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line,total_amount:"
|
||||||
|
msgid "The total amount allocated to the budget line and its children."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line.period,actual_amount:"
|
||||||
|
msgid "The total amount booked against the budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line.period,budget_line:"
|
||||||
|
msgid "The line that the budget period is part of."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line.period,percentage:"
|
||||||
|
msgid "The percentage of booked amount of the budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line.period,ratio:"
|
||||||
|
msgid "The percentage allocated to the budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.budget.line.period,total_amount:"
|
||||||
|
msgid "The total amount allocated to the budget and its children."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget,string:"
|
||||||
|
msgid "Account Budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget.context,string:"
|
||||||
|
msgid "Account Budget Context"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget.copy.start,string:"
|
||||||
|
msgid "Account Budget Copy Start"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget.line,string:"
|
||||||
|
msgid "Account Budget Line"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget.line.create_periods.start,string:"
|
||||||
|
msgid "Account Budget Line Create Periods Start"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.budget.line.period,string:"
|
||||||
|
msgid "Account Budget Line Period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_budget_form"
|
||||||
|
msgid "Budgets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_budget_line_form"
|
||||||
|
msgid "Budget Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_budget_report"
|
||||||
|
msgid "Budgets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:wizard_budget_copy"
|
||||||
|
msgid "Copy Budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:wizard_budget_line_create_periods"
|
||||||
|
msgid "Create Periods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_budget_line_budget_account_type_unique"
|
||||||
|
msgid "The account type must be unique for each budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_budget_line_budget_account_unique"
|
||||||
|
msgid "The account must be unique for each budget."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.message,text:msg_budget_line_period_budget_line_period_unique"
|
||||||
|
msgid "The period must be unique for each budget line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_budget_line_period_ratio"
|
||||||
|
msgid ""
|
||||||
|
"The sum of period ratios for the budget line \"%(budget_line)s\" must be "
|
||||||
|
"less or equal to 100%%."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:budget_copy_button"
|
||||||
|
msgid "Copy"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:budget_line_create_periods_button"
|
||||||
|
msgid "Create Periods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:budget_update_lines_button"
|
||||||
|
msgid "Update Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.rule.group,name:rule_group_budget_companies"
|
||||||
|
msgid "User in companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_budget"
|
||||||
|
msgid "Budgets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_budget_form"
|
||||||
|
msgid "Budgets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_budget_report"
|
||||||
|
msgid "Budgets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:res.group,name:group_budget"
|
||||||
|
msgid "Account Budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.budget.line.create_periods.start,method:"
|
||||||
|
msgid "Evenly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.budget.copy.start:"
|
||||||
|
msgid "%"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.budget.line.period:"
|
||||||
|
msgid "%"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.budget.line:"
|
||||||
|
msgid "%"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.budget.line:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.budget.line:"
|
||||||
|
msgid "Name:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.budget.copy,start,copy:"
|
||||||
|
msgid "Copy"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.budget.copy,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"wizard_button:account.budget.line.create_periods,start,create_periods:"
|
||||||
|
msgid "Create"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.budget.line.create_periods,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
company
|
company
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,53 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,cash_rounding:"
|
||||||
|
msgid "Cash Rounding"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,cash_rounding_credit_account:"
|
||||||
|
msgid "Cash Rounding Credit Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,cash_rounding_debit_account:"
|
||||||
|
msgid "Cash Rounding Debit Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.cash_rounding_account,cash_rounding:"
|
||||||
|
msgid "Cash Rounding"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"field:account.configuration.cash_rounding_account,cash_rounding_credit_account:"
|
||||||
|
msgid "Cash Rounding Credit Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"field:account.configuration.cash_rounding_account,cash_rounding_debit_account:"
|
||||||
|
msgid "Cash Rounding Debit Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.cash_rounding_account,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice,cash_rounding:"
|
||||||
|
msgid "Cash Rounding"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:currency.currency,cash_rounding:"
|
||||||
|
msgid "Cash Rounding Factor"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:purchase.purchase,cash_rounding:"
|
||||||
|
msgid "Cash Rounding"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.configuration.cash_rounding_account,string:"
|
||||||
|
msgid "Account Configuration Cash Rounding Account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_missing_cash_rounding_account"
|
||||||
|
msgid "There is not cash rounding account configured."
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
currency
|
currency
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,227 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.account.type,consolidation:"
|
||||||
|
msgid "Consolidation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,amount_cmp:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,assets:"
|
||||||
|
msgid "Assets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,children:"
|
||||||
|
msgid "Children"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,parent:"
|
||||||
|
msgid "Parent"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,statement:"
|
||||||
|
msgid "Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation,types:"
|
||||||
|
msgid "Types"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,companies:"
|
||||||
|
msgid "Companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,comparison:"
|
||||||
|
msgid "Comparison"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,date_cmp:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.balance_sheet.context,posted:"
|
||||||
|
msgid "Posted Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,companies:"
|
||||||
|
msgid "Companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,comparison:"
|
||||||
|
msgid "Comparison"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,from_date:"
|
||||||
|
msgid "From Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,from_date_cmp:"
|
||||||
|
msgid "From Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,posted:"
|
||||||
|
msgid "Posted Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,to_date:"
|
||||||
|
msgid "To Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.consolidation.income_statement.context,to_date_cmp:"
|
||||||
|
msgid "To Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice,consolidation_company:"
|
||||||
|
msgid "Consolidation Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move,consolidation_company:"
|
||||||
|
msgid "Consolidation Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.line,consolidation_company:"
|
||||||
|
msgid "Consolidation Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.consolidation.balance_sheet.context,posted:"
|
||||||
|
msgid "Only include posted moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.consolidation.income_statement.context,posted:"
|
||||||
|
msgid "Only include posted moves."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.consolidation,string:"
|
||||||
|
msgid "Account Consolidation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.consolidation.balance_sheet.context,string:"
|
||||||
|
msgid "Account Consolidation Balance Sheet Context"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.consolidation.income_statement.context,string:"
|
||||||
|
msgid "Account Consolidation Income Statement Context"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_consolidation_balance_sheet_tree"
|
||||||
|
msgid "Consolidated Balance Sheet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_consolidation_income_statement_tree"
|
||||||
|
msgid "Consolidated Income Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_consolidation_list"
|
||||||
|
msgid "Account Consolidations"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_consolidation_tree"
|
||||||
|
msgid "Account Consolidations"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:report_consolidation_statement"
|
||||||
|
msgid "Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_consolidation_list"
|
||||||
|
msgid "Account Consolidations"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_consolidation_tree"
|
||||||
|
msgid "Account Consolidations"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_open_consolidation_balance_sheet"
|
||||||
|
msgid "Consolidated Balance Sheet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_open_consolidation_income_statement"
|
||||||
|
msgid "Consolidated Income Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "/"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Balance Sheet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Companies:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "From Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Income Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Print Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "Statement"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "To"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "User:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.consolidation.statement:"
|
||||||
|
msgid "at"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.consolidation,statement:"
|
||||||
|
msgid "Balance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.consolidation,statement:"
|
||||||
|
msgid "Income"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.consolidation,statement:"
|
||||||
|
msgid "Off-Balance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.consolidation:"
|
||||||
|
msgid "Comparison"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
company
|
company
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,108 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,default_credit_limit_amount:"
|
||||||
|
msgid "Default Credit Limit Amount"
|
||||||
|
msgstr "Importe del límite de crédito por defecto"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,default_credit_limit_amount_digits:"
|
||||||
|
msgid "Currency Digits"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.default_credit_limit_amount,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"field:account.configuration.default_credit_limit_amount,default_credit_limit_amount:"
|
||||||
|
msgid "Default Credit Limit Amount"
|
||||||
|
msgstr "Importe del límite de crédito por defecto"
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"field:account.configuration.default_credit_limit_amount,default_credit_limit_amount_digits:"
|
||||||
|
msgid "Currency Digits"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,credit_limit:"
|
||||||
|
msgid "Credit Limit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party,credit_amount:"
|
||||||
|
msgid "Credit Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party,credit_limit_amount:"
|
||||||
|
msgid "Credit Limit Amount"
|
||||||
|
msgstr "Importe del límite de crédito"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:party.party,credit_limit_amounts:"
|
||||||
|
msgid "Credit Limit Amounts"
|
||||||
|
msgstr "Importe del límite de crédito"
|
||||||
|
|
||||||
|
msgctxt "field:party.party.credit_limit_amount,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:party.party.credit_limit_amount,credit_limit_amount:"
|
||||||
|
msgid "Credit Limit Amount"
|
||||||
|
msgstr "Importe del límite de crédito"
|
||||||
|
|
||||||
|
msgctxt "field:party.party.credit_limit_amount,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party.credit_limit_amount,party:"
|
||||||
|
msgid "Party"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,default_credit_limit_amount:"
|
||||||
|
msgid "The default credit limit amount for new customers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"help:account.configuration.default_credit_limit_amount,default_credit_limit_amount:"
|
||||||
|
msgid "The default credit limit amount for new customers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.level,credit_limit:"
|
||||||
|
msgid "Has reached the credit limit."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.configuration.default_credit_limit_amount,string:"
|
||||||
|
msgid "Account Configuration Default Credit Limit Amount"
|
||||||
|
msgstr "Importe del límite de crédito por defecto"
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_party_credit_limit_amount"
|
||||||
|
msgid ""
|
||||||
|
"The party \"%(party)s\" will exceed their %(limit)s credit limit by "
|
||||||
|
"%(amount)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_party_credit_limit_dunning"
|
||||||
|
msgid ""
|
||||||
|
"The party \"%(party)s\" has reached the credit limit level for dunning "
|
||||||
|
"\"%(dunning)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:party.party.credit_limit_amount,string:"
|
||||||
|
msgid "Party Credit Limit Amount"
|
||||||
|
msgstr "Límite de crédito por defecto"
|
||||||
|
|
||||||
|
msgctxt "model:res.group,name:group_credit_limit"
|
||||||
|
msgid "Account Credit Limit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Credit Limit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:party.party:"
|
||||||
|
msgid "Credit Limit"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
company
|
company
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,70 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.account.type,deposit:"
|
||||||
|
msgid "Deposit"
|
||||||
|
msgstr "Anticipo"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "field:account.account.type.template,deposit:"
|
||||||
|
msgid "Deposit"
|
||||||
|
msgstr "Anticipo"
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.recall_deposit.start,account:"
|
||||||
|
msgid "Account"
|
||||||
|
msgstr "Cuenta"
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.recall_deposit.start,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr "Empresa"
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.recall_deposit.start,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.recall_deposit.start,description:"
|
||||||
|
msgid "Description"
|
||||||
|
msgstr "Descripción"
|
||||||
|
|
||||||
|
msgctxt "field:party.party,deposit:"
|
||||||
|
msgid "Deposit"
|
||||||
|
msgstr "Anticipo"
|
||||||
|
|
||||||
|
msgctxt "model:account.invoice.recall_deposit.start,string:"
|
||||||
|
msgid "Account Invoice Recall Deposit Start"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_move_line_deposit"
|
||||||
|
msgid "Deposit Lines"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:wizard_recall_deposit"
|
||||||
|
msgid "Recall Deposit"
|
||||||
|
msgstr "Recuperar anticipo"
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_deposit_not_enough"
|
||||||
|
msgid "The account \"%(account)s\" has not enough deposit from party \"%(party)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_erase_party_deposit"
|
||||||
|
msgid ""
|
||||||
|
"You cannot erase party \"%(party)s\" while they have deposit at company "
|
||||||
|
"\"%(company)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.model.button,string:invoice_recall_deposit_button"
|
||||||
|
msgid "Recall Deposit"
|
||||||
|
msgstr "Recuperar anticipo"
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.invoice.recall_deposit,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr "Cancelar"
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.invoice.recall_deposit,start,recall:"
|
||||||
|
msgid "Recall"
|
||||||
|
msgstr "Recuperar"
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_invoice
|
account_invoice
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,321 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,default_dunning_procedure:"
|
||||||
|
msgid "Default Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro por defecto"
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"field:account.configuration.default_dunning_procedure,default_dunning_procedure:"
|
||||||
|
msgid "Default Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro por defecto"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,active:"
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,age:"
|
||||||
|
msgid "Age"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,amount_second_currency:"
|
||||||
|
msgid "Amount Second Currency"
|
||||||
|
msgstr "Importe en moneda secundaria"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,blocked:"
|
||||||
|
msgid "Blocked"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,level:"
|
||||||
|
msgid "Level"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,line:"
|
||||||
|
msgid "Line"
|
||||||
|
msgstr "Línea"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,maturity_date:"
|
||||||
|
msgid "Maturity Date"
|
||||||
|
msgstr "Fecha de vencimiento"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,party:"
|
||||||
|
msgid "Party"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,procedure:"
|
||||||
|
msgid "Procedure"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,second_currency:"
|
||||||
|
msgid "Second Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,state:"
|
||||||
|
msgid "State"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.create.start,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,overdue:"
|
||||||
|
msgid "Overdue"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,procedure:"
|
||||||
|
msgid "Procedure"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.procedure,levels:"
|
||||||
|
msgid "Levels"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.procedure,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.line,dunnings:"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
msgctxt "field:party.party,dunning_procedure:"
|
||||||
|
msgid "Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro"
|
||||||
|
|
||||||
|
msgctxt "field:party.party,dunning_procedures:"
|
||||||
|
msgid "Dunning Procedures"
|
||||||
|
msgstr "Procedimientos de cobro"
|
||||||
|
|
||||||
|
msgctxt "field:party.party.dunning_procedure,dunning_procedure:"
|
||||||
|
msgid "Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro"
|
||||||
|
|
||||||
|
msgctxt "field:party.party.dunning_procedure,party:"
|
||||||
|
msgid "Party"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,default_dunning_procedure:"
|
||||||
|
msgid "The default dunning procedure for new customers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"help:account.configuration.default_dunning_procedure,default_dunning_procedure:"
|
||||||
|
msgid "The default dunning procedure for new customers."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning,age:"
|
||||||
|
msgid "How long the dunning has been at the level."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning,blocked:"
|
||||||
|
msgid "Check to block further levels of the procedure."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning,company:"
|
||||||
|
msgid "Make the dunning belong to the company."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning,date:"
|
||||||
|
msgid "When the dunning reached the level."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning,line:"
|
||||||
|
msgid "The receivable line to dun for."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.create.start,date:"
|
||||||
|
msgid "Create dunning up to this date."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.level,overdue:"
|
||||||
|
msgid ""
|
||||||
|
"The delay from the maturity date after which the level should be applied."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.procedure,name:"
|
||||||
|
msgid "The main identifier of the Dunning Procedure."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.configuration.default_dunning_procedure,string:"
|
||||||
|
msgid "Account Configuration Default Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro por defecto"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning,string:"
|
||||||
|
msgid "Account Dunning"
|
||||||
|
msgstr "Cobro contable"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.create.start,string:"
|
||||||
|
msgid "Account Dunning Create Start"
|
||||||
|
msgstr "Nivel de cobro contable"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.level,string:"
|
||||||
|
msgid "Account Dunning Level"
|
||||||
|
msgstr "Nivel de cobro contable"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.procedure,string:"
|
||||||
|
msgid "Account Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro contable"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.process.start,string:"
|
||||||
|
msgid "Account Dunning Process Start"
|
||||||
|
msgstr "Procedimiento de cobro contable"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_dunning_form"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_dunning_party"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_dunning_procedure_form"
|
||||||
|
msgid "Procedures"
|
||||||
|
msgstr "Procedimientos de cobro"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:act_reschedule_dunning_wizard"
|
||||||
|
msgid "Reschedule Dunning"
|
||||||
|
msgstr "Cobro contable"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:wizard_dunning_create"
|
||||||
|
msgid "Create Dunnings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.action,name:wizard_dunning_process"
|
||||||
|
msgid "Process Dunning"
|
||||||
|
msgstr "¿Procesar cobro?"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_dunning_form_domain_all"
|
||||||
|
msgid "All"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_dunning_form_domain_draft"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action.act_window.domain,name:act_dunning_form_domain_final"
|
||||||
|
msgid "Final"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_dunning_form_domain_waiting"
|
||||||
|
msgid "Waiting"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.message,text:msg_dunning_line_unique"
|
||||||
|
msgid "Line can be used only once on dunning."
|
||||||
|
msgstr "La línea puede ser utilizada sólo una vez en el cobro."
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:dunning_reschedule_button"
|
||||||
|
msgid "Reschedule"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.rule.group,name:rule_group_dunning_companies"
|
||||||
|
msgid "User in companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunning_configuration"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunning_create"
|
||||||
|
msgid "Create Dunnings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunning_form"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunning_procedure_form"
|
||||||
|
msgid "Procedures"
|
||||||
|
msgstr "Procedimientos de cobro"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunnings"
|
||||||
|
msgid "Dunnings"
|
||||||
|
msgstr "Cobros"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:party.party.dunning_procedure,string:"
|
||||||
|
msgid "Party Dunning Procedure"
|
||||||
|
msgstr "Procedimiento de cobro por defecto"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:res.group,name:group_dunning"
|
||||||
|
msgid "Dunning"
|
||||||
|
msgstr "Cobranzas"
|
||||||
|
|
||||||
|
msgctxt "selection:account.dunning,state:"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.dunning,state:"
|
||||||
|
msgid "Final"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.dunning,state:"
|
||||||
|
msgid "Waiting"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Dunning"
|
||||||
|
msgstr "Cobranzas"
|
||||||
|
|
||||||
|
msgctxt "view:account.dunning.create.start:"
|
||||||
|
msgid "Create Dunning for date"
|
||||||
|
msgstr "Crear cobro para la fecha"
|
||||||
|
|
||||||
|
msgctxt "view:account.dunning.process.start:"
|
||||||
|
msgid "Process Dunning?"
|
||||||
|
msgstr "¿Procesar cobro?"
|
||||||
|
|
||||||
|
msgctxt "view:party.party:"
|
||||||
|
msgid "Dunning"
|
||||||
|
msgstr "Cobro"
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.dunning.create,start,create_:"
|
||||||
|
msgid "Create"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.dunning.create,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.dunning.process,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.dunning.process,start,process:"
|
||||||
|
msgid "Process"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
company
|
company
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,83 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,dunning_email_fallback:"
|
||||||
|
msgid "Fall-back User"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,email_contact_mechanism:"
|
||||||
|
msgid "Contact Mechanism"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,email_from:"
|
||||||
|
msgid "From"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,email_template:"
|
||||||
|
msgid "Email Template"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,send_email:"
|
||||||
|
msgid "Send Email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:ir.email,dunning_level:"
|
||||||
|
msgid "Level"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.configuration,dunning_email_fallback:"
|
||||||
|
msgid "User notified when no email is found to send the dunning."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.level,email_contact_mechanism:"
|
||||||
|
msgid "Define which email to use from the party's contact mechanisms."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.level,email_from:"
|
||||||
|
msgid "Leave empty for the value defined in the configuration file."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:report_email"
|
||||||
|
msgid "Dunning Email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Description"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Due Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Fees:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Pending Payments Received"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Reference"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Reminder Notice"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.dunning.level:"
|
||||||
|
msgid "Email"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_dunning
|
account_dunning
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,90 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning,fees:"
|
||||||
|
msgid "Fees"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee,compute_method:"
|
||||||
|
msgid "Compute Method"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee,journal:"
|
||||||
|
msgid "Journal"
|
||||||
|
msgstr "Libro diario"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee,name:"
|
||||||
|
msgid "Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee,percentage:"
|
||||||
|
msgid "Percentage"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee,product:"
|
||||||
|
msgid "Product"
|
||||||
|
msgstr "Producto"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee.dunning_level,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee.dunning_level,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee.dunning_level,dunning:"
|
||||||
|
msgid "Dunning"
|
||||||
|
msgstr "Cobro"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee.dunning_level,level:"
|
||||||
|
msgid "Level"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.fee.dunning_level,moves:"
|
||||||
|
msgid "Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,fee:"
|
||||||
|
msgid "Fee"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.dunning.fee,compute_method:"
|
||||||
|
msgid "Method to compute the fee amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.fee,string:"
|
||||||
|
msgid "Account Dunning Fee"
|
||||||
|
msgstr "Cuenta de los gastos de cobro"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.dunning.fee.dunning_level,string:"
|
||||||
|
msgid "Account Dunning Fee Dunning Level"
|
||||||
|
msgstr "Cuenta de los gatos de cobro - Nivel"
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_dunning_fee_form"
|
||||||
|
msgid "Fees"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:ir.message,text:msg_fee_dunning_level_unique"
|
||||||
|
msgid "Fee must be unique by dunning and level."
|
||||||
|
msgstr "Los gastos deben ser únicos por cobro y nivel."
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_dunning_fee_form"
|
||||||
|
msgid "Fees"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.dunning.fee,compute_method:"
|
||||||
|
msgid "List Price"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.dunning.fee,compute_method:"
|
||||||
|
msgid "Percentage"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.dunning.fee:"
|
||||||
|
msgid "%"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account_dunning
|
account_dunning
|
||||||
account_product
|
account_product
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,47 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.dunning.level,print_on_letter:"
|
||||||
|
msgid "Print on Letter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:report_letter"
|
||||||
|
msgid "Dunning Letter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Date:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Description"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Due Date"
|
||||||
|
msgstr "Fecha de vencimiento"
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Fees:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Pending Payments Received"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Reference"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "report:account.dunning.letter:"
|
||||||
|
msgid "Reminder Notice"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_dunning
|
account_dunning
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,368 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,amount:"
|
||||||
|
msgid "Amount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,code:"
|
||||||
|
msgid "Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,company_tax_identifier:"
|
||||||
|
msgid "Company Tax Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,currency:"
|
||||||
|
msgid "Currency"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,party:"
|
||||||
|
msgid "Party"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list,party_tax_identifier:"
|
||||||
|
msgid "Party Tax Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list.context,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list.context,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.ec_sales_list.context,period:"
|
||||||
|
msgid "Period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax,ec_sales_list_code:"
|
||||||
|
msgid "EC Sales List Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax,vatex_code:"
|
||||||
|
msgid "Tax Exemption Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax.template,ec_sales_list_code:"
|
||||||
|
msgid "EC Sales List Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax.template,vatex_code:"
|
||||||
|
msgid "Tax Exemption Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.tax,vatex_code:"
|
||||||
|
msgid "The reason why the amount is exempted from VAT."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgctxt "model:account.ec_sales_list,string:"
|
||||||
|
msgid "Account Ec Sales List"
|
||||||
|
msgstr "EC Sales List"
|
||||||
|
|
||||||
|
msgctxt "model:account.ec_sales_list.context,string:"
|
||||||
|
msgid "Account Ec Sales List Context"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_ec_sales_list_form"
|
||||||
|
msgid "EC Sales List"
|
||||||
|
msgstr "EC Sales List"
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_ec_sales_list"
|
||||||
|
msgid "EC Sales List"
|
||||||
|
msgstr "EC Sales List"
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 132 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (a) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (b) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (c) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (d) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (e) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (f) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (g) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (h) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (i) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (j) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (k) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (l) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (m) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (n) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (o) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (p) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 132, section 1 (q) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 143 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (a) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (b) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (c) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (d) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (e) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (f) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (fa) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (g) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (h) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (i) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (j) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (k) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 143, section 1 (l) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 144 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 146 section 1 (e) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 148 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (a) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (b) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (c) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (d) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (e) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (f) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 148, section (g) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 151 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (a) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (aa) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (b) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (c) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (d) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"Exempt based on article 151, section 1 (e) of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 159 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 309 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 79, point c of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Export outside the EU"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Intra-Community acquisition from second hand means of transport"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Intra-Community acquisition of collectors items and antiques"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Intra-Community acquisition of second hand goods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Intra-Community acquisition of works of art"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Intra-Community supply"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Not subject to VAT"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Reverse charge"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.tax.template:"
|
||||||
|
msgid "European Codes"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.tax:"
|
||||||
|
msgid "European Codes"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_invoice
|
account_invoice
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,119 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,move_export_type:"
|
||||||
|
msgid "Move Export Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.export,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration.export,move_export_type:"
|
||||||
|
msgid "Move Export Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move,export:"
|
||||||
|
msgid "Export"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,file:"
|
||||||
|
msgid "File"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,file_id:"
|
||||||
|
msgid "File ID"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,filename:"
|
||||||
|
msgid "Filename"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,moves:"
|
||||||
|
msgid "Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,state:"
|
||||||
|
msgid "State"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.move.export,type:"
|
||||||
|
msgid "Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.configuration.export,string:"
|
||||||
|
msgid "Account Configuration Export"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.move.export,string:"
|
||||||
|
msgid "Account Move Export"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_account_move_export_form"
|
||||||
|
msgid "Move Exports"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_account_move_export_form_domain_all"
|
||||||
|
msgid "All"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_account_move_export_form_domain_draft"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_account_move_export_form_domain_waiting"
|
||||||
|
msgid "Waiting"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_account_move_export_delete_draft"
|
||||||
|
msgid "To delete move export \"%(export)s\" you must reset it to draft."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:account_move_export_do_button"
|
||||||
|
msgid "Do"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:account_move_export_draft_button"
|
||||||
|
msgid "Reset to Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:account_move_export_select_moves_button"
|
||||||
|
msgid "Select Moves"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:account_move_export_wait_button"
|
||||||
|
msgid "Wait"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.rule.group,name:rule_group_account_move_export_companies"
|
||||||
|
msgid "User in companies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_account_move_export_form"
|
||||||
|
msgid "Move Exports"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.move.export,state:"
|
||||||
|
msgid "Done"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.move.export,state:"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.move.export,state:"
|
||||||
|
msgid "Waiting"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Export"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
company
|
company
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,65 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.account,winbooks_code:"
|
||||||
|
msgid "WinBooks Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.fiscalyear,winbooks_code:"
|
||||||
|
msgid "WinBooks Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.journal,winbooks_code:"
|
||||||
|
msgid "WinBooks Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.journal,winbooks_code_credit_note:"
|
||||||
|
msgid "WinBooks Code Credit Note"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax,winbooks_code:"
|
||||||
|
msgid "WinBooks Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.tax.template,winbooks_code:"
|
||||||
|
msgid "WinBooks Code"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party,winbooks_customer_identifier:"
|
||||||
|
msgid "WinBooks Customer Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party,winbooks_supplier_identifier:"
|
||||||
|
msgid "WinBooks Supplier Identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.journal,winbooks_code_credit_note:"
|
||||||
|
msgid ""
|
||||||
|
"The code to use for credit note.\n"
|
||||||
|
"Leave empty to use the default code."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_account_tax_line_tax_move_line_unique"
|
||||||
|
msgid "Only one tax line of type \"Tax\" is allowed per move line."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_party_identifier_winbooks_code_unique"
|
||||||
|
msgid "The WinBooks identifier must be unique."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_party_identifier_winbooks_party_unique"
|
||||||
|
msgid "A party can have only one active WinBooks identifier."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.move.export,type:"
|
||||||
|
msgid "WinBooks"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:party.configuration,identifier_types:"
|
||||||
|
msgid "WinBooks Customer"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:party.configuration,identifier_types:"
|
||||||
|
msgid "WinBooks Supplier"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_export
|
account_export
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,171 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.fr.fec.result,file:"
|
||||||
|
msgid "File"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.fr.fec.result,filename:"
|
||||||
|
msgid "File Name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.fr.fec.start,deferral_period:"
|
||||||
|
msgid "Deferral Period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.fr.fec.start,fiscalyear:"
|
||||||
|
msgid "Fiscal Year"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.fr.fec.start,type:"
|
||||||
|
msgid "Type"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:account.fr.fec.start,deferral_period:"
|
||||||
|
msgid ""
|
||||||
|
"The period to exclude which contains the moves to balance non-deferral "
|
||||||
|
"account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.fr.fec.result,string:"
|
||||||
|
msgid "Account Fr Fec Result"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.fr.fec.start,string:"
|
||||||
|
msgid "Account Fr Fec Start"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_fec"
|
||||||
|
msgid "Generate FEC"
|
||||||
|
msgstr "Generate FEC"
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_fec"
|
||||||
|
msgid "Generate FEC"
|
||||||
|
msgstr "Generate FEC"
|
||||||
|
|
||||||
|
msgctxt "selection:account.fr.fec.start,type:"
|
||||||
|
msgid "IS-BIC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 1 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 1. of article 261 C of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 1. of article 261 D of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 1. of article 261 E of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 1.bis of article 261 D of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 2 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 2 of article 283 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 2. of article 261 C of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 2. of article 261 D of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 2. of article 261 E of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 3 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 3. of article 261 C of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 3. of article 261 D of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 4 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 4. of article 261 D of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 5 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 7 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on 8 of article 261 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 153 of Council Directive 2006/112/EC"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 261 A of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 261 B of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 275 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 277 A of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 295 of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "Exempt based on article 298 sexdecies A of the General tax code (CGI)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid ""
|
||||||
|
"France domestic Credit Notes without VAT, due to supplier forfeit of VAT for"
|
||||||
|
" discount"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.tax,vatex_code:"
|
||||||
|
msgid "France domestic VAT franchise in base"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.fr.fec,result,end:"
|
||||||
|
msgid "Close"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.fr.fec,start,end:"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "wizard_button:account.fr.fec,start,generate:"
|
||||||
|
msgid "Generate"
|
||||||
|
msgstr ""
|
||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.1
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
party_siret
|
party_siret
|
||||||
|
|||||||
@@ -1,4 +1,14 @@
|
|||||||
|
|
||||||
|
Version 8.0.2 - 2026-10-01
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
|
Version 8.0.1 - 2026-09-16
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
Version 8.0.0 - 2026-04-20
|
Version 8.0.0 - 2026-04-20
|
||||||
--------------------------
|
--------------------------
|
||||||
* Bug fixes (see mercurial logs for details)
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import datetime
|
|||||||
import logging
|
import logging
|
||||||
import posixpath
|
import posixpath
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
from functools import wraps
|
||||||
|
|
||||||
from oauthlib.oauth2 import BackendApplicationClient, TokenExpiredError
|
from oauthlib.oauth2 import BackendApplicationClient, TokenExpiredError
|
||||||
from requests_oauthlib import OAuth2Session
|
from requests_oauthlib import OAuth2Session
|
||||||
@@ -204,6 +205,22 @@ class Invoice(metaclass=PoolMeta):
|
|||||||
InvoiceChorus.save(invoices_chorus)
|
InvoiceChorus.save(invoices_chorus)
|
||||||
|
|
||||||
|
|
||||||
|
def default_records(state):
|
||||||
|
def decorator(func):
|
||||||
|
@wraps(func)
|
||||||
|
def wrapper(cls, records=None):
|
||||||
|
transaction = Transaction()
|
||||||
|
if records is None:
|
||||||
|
records = cls.search([
|
||||||
|
('invoice.company', '=',
|
||||||
|
transaction.context.get('company')),
|
||||||
|
('state', '=', state),
|
||||||
|
])
|
||||||
|
return func(cls, records)
|
||||||
|
return wrapper
|
||||||
|
return decorator
|
||||||
|
|
||||||
|
|
||||||
class InvoiceChorus(
|
class InvoiceChorus(
|
||||||
Workflow, ModelSQL, ModelView, _SyntaxMixin, metaclass=PoolMeta):
|
Workflow, ModelSQL, ModelView, _SyntaxMixin, metaclass=PoolMeta):
|
||||||
__name__ = 'account.invoice.chorus'
|
__name__ = 'account.invoice.chorus'
|
||||||
@@ -337,6 +354,7 @@ class InvoiceChorus(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@default_records('draft')
|
||||||
@ModelView.button
|
@ModelView.button
|
||||||
@Workflow.transition('sent')
|
@Workflow.transition('sent')
|
||||||
def send(cls, records=None):
|
def send(cls, records=None):
|
||||||
@@ -348,13 +366,6 @@ class InvoiceChorus(
|
|||||||
Credential = pool.get('account.credential.chorus')
|
Credential = pool.get('account.credential.chorus')
|
||||||
transaction = Transaction()
|
transaction = Transaction()
|
||||||
|
|
||||||
if not records:
|
|
||||||
records = cls.search([
|
|
||||||
('invoice.company', '=',
|
|
||||||
transaction.context.get('company')),
|
|
||||||
('state', '=', 'draft'),
|
|
||||||
])
|
|
||||||
|
|
||||||
sessions = defaultdict(Credential.get_session)
|
sessions = defaultdict(Credential.get_session)
|
||||||
cls.lock(records)
|
cls.lock(records)
|
||||||
for record in records:
|
for record in records:
|
||||||
@@ -392,6 +403,7 @@ class InvoiceChorus(
|
|||||||
}
|
}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@default_records('sent')
|
||||||
@ModelView.button
|
@ModelView.button
|
||||||
def update(cls, records=None):
|
def update(cls, records=None):
|
||||||
"Update state from Chorus"
|
"Update state from Chorus"
|
||||||
@@ -399,13 +411,6 @@ class InvoiceChorus(
|
|||||||
Credential = pool.get('account.credential.chorus')
|
Credential = pool.get('account.credential.chorus')
|
||||||
transaction = Transaction()
|
transaction = Transaction()
|
||||||
|
|
||||||
if not records:
|
|
||||||
records = cls.search([
|
|
||||||
('invoice.company', '=',
|
|
||||||
transaction.context.get('company')),
|
|
||||||
('state', '=', 'sent'),
|
|
||||||
])
|
|
||||||
|
|
||||||
sessions = defaultdict(Credential.get_session)
|
sessions = defaultdict(Credential.get_session)
|
||||||
succeeded, failed = [], []
|
succeeded, failed = [], []
|
||||||
for record in records:
|
for record in records:
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -0,0 +1,199 @@
|
|||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_login:"
|
||||||
|
msgid "Login"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_password:"
|
||||||
|
msgid "Password"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_piste_client_id:"
|
||||||
|
msgid "Piste Client ID"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_piste_client_secret:"
|
||||||
|
msgid "Piste Client Secret"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_service:"
|
||||||
|
msgid "Service"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.configuration,chorus_syntax:"
|
||||||
|
msgid "Syntax"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,chorus_login:"
|
||||||
|
msgid "Login"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,chorus_password:"
|
||||||
|
msgid "Password"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,chorus_piste_client_id:"
|
||||||
|
msgid "Piste Client ID"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,chorus_piste_client_secret:"
|
||||||
|
msgid "Piste Client Secret"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,chorus_service:"
|
||||||
|
msgid "Service"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.credential.chorus,company:"
|
||||||
|
msgid "Company"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,data:"
|
||||||
|
msgid "Data"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,data_file_id:"
|
||||||
|
msgid "Data File ID"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,date:"
|
||||||
|
msgid "Date"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,filename:"
|
||||||
|
msgid "Filename"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,invoice:"
|
||||||
|
msgid "Invoice"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,number:"
|
||||||
|
msgid "Number"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,state:"
|
||||||
|
msgid "State"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:account.invoice.chorus,syntax:"
|
||||||
|
msgid "Syntax"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "field:party.party,chorus:"
|
||||||
|
msgid "Chorus Pro"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "help:party.party,chorus:"
|
||||||
|
msgid "Send documents for this party through Chorus Pro"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.credential.chorus,string:"
|
||||||
|
msgid "Account Credential Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:account.invoice.chorus,string:"
|
||||||
|
msgid "Account Invoice Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.action,name:act_invoice_chorus_form"
|
||||||
|
msgid "Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_invoice_chorus_form_domain_all"
|
||||||
|
msgid "All"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_invoice_chorus_form_domain_draft"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_invoice_chorus_form_domain_exception"
|
||||||
|
msgid "Exception"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt ""
|
||||||
|
"model:ir.action.act_window.domain,name:act_invoice_chorus_form_domain_sent"
|
||||||
|
msgid "Sent"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_chorus_credential_modified"
|
||||||
|
msgid "Are you sure you want to modify Chorus credentials?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_invoice_address_no_siret"
|
||||||
|
msgid ""
|
||||||
|
"To create a Chorus invoice for \"%(invoice)s\", you must set a SIRET on "
|
||||||
|
"address \"%(address)s\"."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#, python-format
|
||||||
|
msgctxt "model:ir.message,text:msg_invoice_delete_sent"
|
||||||
|
msgid "You cannot delete Chorus invoice \"%(invoice)s\" because it is sent."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.message,text:msg_invoice_unique"
|
||||||
|
msgid "You can create only one Chorus invoice per invoice."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:invoice_chorus_send_button"
|
||||||
|
msgid "Send"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.model.button,string:invoice_chorus_update_button"
|
||||||
|
msgid "Update"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "model:ir.ui.menu,name:menu_invoice_chorus_form"
|
||||||
|
msgid "Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,chorus_service:"
|
||||||
|
msgid "Production"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.configuration,chorus_service:"
|
||||||
|
msgid "Qualification"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.credential.chorus,chorus_service:"
|
||||||
|
msgid "Production"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.credential.chorus,chorus_service:"
|
||||||
|
msgid "Qualification"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.invoice.chorus,state:"
|
||||||
|
msgid "Done"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.invoice.chorus,state:"
|
||||||
|
msgid "Draft"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.invoice.chorus,state:"
|
||||||
|
msgid "Exception"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:account.invoice.chorus,state:"
|
||||||
|
msgid "Sent"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:ir.cron,method:"
|
||||||
|
msgid "Send invoices to Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "selection:ir.cron,method:"
|
||||||
|
msgid "Update invoices from Chorus"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "view:account.configuration:"
|
||||||
|
msgid "Chorus"
|
||||||
|
msgstr ""
|
||||||
@@ -123,7 +123,11 @@ Check Chorus invoice::
|
|||||||
|
|
||||||
Send to Chorus::
|
Send to Chorus::
|
||||||
|
|
||||||
>>> invoice_chorus.click('send')
|
>>> invoice_send, = Cron.find(
|
||||||
|
... [('method', '=', 'account.invoice.chorus|send')], limit=1)
|
||||||
|
>>> invoice_send.click('run_once')
|
||||||
|
|
||||||
|
>>> invoice_chorus.reload()
|
||||||
>>> invoice_chorus.state
|
>>> invoice_chorus.state
|
||||||
'sent'
|
'sent'
|
||||||
>>> bool(invoice_chorus.number)
|
>>> bool(invoice_chorus.number)
|
||||||
@@ -136,8 +140,11 @@ Send to Chorus::
|
|||||||
|
|
||||||
Update from Chorus::
|
Update from Chorus::
|
||||||
|
|
||||||
|
>>> invoice_update, = Cron.find(
|
||||||
|
... [('method', '=', 'account.invoice.chorus|update')], limit=1)
|
||||||
>>> while invoice_chorus.state == 'sent':
|
>>> while invoice_chorus.state == 'sent':
|
||||||
... invoice_chorus.click('update')
|
... invoice_update.click('run_once')
|
||||||
|
... invoice_chorus.reload()
|
||||||
... time.sleep(1)
|
... time.sleep(1)
|
||||||
>>> invoice_chorus.state
|
>>> invoice_chorus.state
|
||||||
'exception'
|
'exception'
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.3
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_invoice
|
account_invoice
|
||||||
|
|||||||
@@ -1,4 +1,14 @@
|
|||||||
|
|
||||||
|
Version 8.0.2 - 2026-09-16
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
|
Version 8.0.1 - 2026-07-15
|
||||||
|
--------------------------
|
||||||
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|
||||||
|
|
||||||
Version 8.0.0 - 2026-04-20
|
Version 8.0.0 - 2026-04-20
|
||||||
--------------------------
|
--------------------------
|
||||||
* Bug fixes (see mercurial logs for details)
|
* Bug fixes (see mercurial logs for details)
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ from stdnum import iso7064, iso11649
|
|||||||
from trytond import backend, config
|
from trytond import backend, config
|
||||||
from trytond.i18n import gettext
|
from trytond.i18n import gettext
|
||||||
from trytond.model import (
|
from trytond.model import (
|
||||||
ChatMixin, DeactivableMixin, Index, MatchMixin, ModelSQL, ModelView,
|
ChatMixin, DeactivableMixin, Index, MatchMixin, ModelSQL, ModelStorage,
|
||||||
Unique, Workflow, dualmethod, fields, sequence_ordered)
|
ModelView, Unique, Workflow, dualmethod, fields, sequence_ordered)
|
||||||
from trytond.model.exceptions import AccessError
|
from trytond.model.exceptions import AccessError
|
||||||
from trytond.modules.account.exceptions import AccountMissing
|
from trytond.modules.account.exceptions import AccountMissing
|
||||||
from trytond.modules.account.tax import TaxableMixin
|
from trytond.modules.account.tax import TaxableMixin
|
||||||
@@ -1581,7 +1581,7 @@ class Invoice(
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def search_origin_invoices(cls, name, clause):
|
def search_origin_invoices(cls, name, clause):
|
||||||
return [('lines.origin.invoice', clause[0][len(name):],
|
return [('lines.origin.invoice' + clause[0][len(name):],
|
||||||
*clause[1:3], 'account.invoice.line', *clause[3:])]
|
*clause[1:3], 'account.invoice.line', *clause[3:])]
|
||||||
|
|
||||||
def chat_language(self, audience='internal'):
|
def chat_language(self, audience='internal'):
|
||||||
@@ -1603,11 +1603,7 @@ class Invoice(
|
|||||||
return super().view_attributes() + [
|
return super().view_attributes() + [
|
||||||
('/form//field[@name="comment"]', 'spell', Eval('party_lang')),
|
('/form//field[@name="comment"]', 'spell', Eval('party_lang')),
|
||||||
('/tree', 'visual',
|
('/tree', 'visual',
|
||||||
If((
|
If(Eval('amount_to_pay_today', 0) > 0,
|
||||||
(Eval('type') == 'out')
|
|
||||||
& (Eval('amount_to_pay_today', 0) > 0))
|
|
||||||
| ((Eval('type') == 'in')
|
|
||||||
& (Eval('amount_to_pay_today', 0) < 0)),
|
|
||||||
'danger',
|
'danger',
|
||||||
If(Eval('state') == 'cancelled', 'muted', ''))),
|
If(Eval('state') == 'cancelled', 'muted', ''))),
|
||||||
] + payment_means
|
] + payment_means
|
||||||
@@ -2798,7 +2794,7 @@ class InvoiceLine(sequence_ordered(), ModelSQL, ModelView, TaxableMixin):
|
|||||||
def origin_name(self):
|
def origin_name(self):
|
||||||
if isinstance(self.origin, self.__class__) and self.origin.id >= 0:
|
if isinstance(self.origin, self.__class__) and self.origin.id >= 0:
|
||||||
return self.origin.invoice.rec_name
|
return self.origin.invoice.rec_name
|
||||||
if self.origin and self.origin.id >= 0:
|
if isinstance(self.origin, ModelStorage) and self.origin.id >= 0:
|
||||||
return self.origin.rec_name
|
return self.origin.rec_name
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -12,7 +12,7 @@ commands_post =
|
|||||||
deps =
|
deps =
|
||||||
coverage
|
coverage
|
||||||
unittest-xml-reporting
|
unittest-xml-reporting
|
||||||
postgresql: psycopg[pool] >= 3
|
postgresql: psycopg[pool,binary] >= 3
|
||||||
passenv = *
|
passenv = *
|
||||||
setenv =
|
setenv =
|
||||||
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
[tryton]
|
[tryton]
|
||||||
version=8.0.0
|
version=8.0.3
|
||||||
depends:
|
depends:
|
||||||
account
|
account
|
||||||
account_product
|
account_product
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ def get_info():
|
|||||||
info['series'] = 'latest'
|
info['series'] = 'latest'
|
||||||
info['branch'] = 'branch/default'
|
info['branch'] = 'branch/default'
|
||||||
else:
|
else:
|
||||||
info['series'] = '.'.join(version.split('.', 2)[:2])
|
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
|
||||||
info['branch'] = 'branch/' + info['series']
|
info['branch'] = 'branch/' + info['series']
|
||||||
|
|
||||||
for key in {'depends', 'extras_depend'}:
|
for key in {'depends', 'extras_depend'}:
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user