6 <menuitem name="Point of Sale"
8 groups="group_pos_manager,group_pos_user"
11 <record id="categ_others" model="pos.category">
12 <field name="name">Others</field>
14 <record id="unreferenced_product" model="product.product">
15 <field name="list_price">1.00</field>
16 <field name="name">Unreferenced Products</field>
17 <field name="pos_categ_id" ref="categ_others"/>
18 <field name="image">iVBORw0KGgoAAAANSUhEUgAAAFUAAABQCAYAAABoODnpAAAABGdBTUEAALGPC/xhBQAAAAFzUkdC
19 AkDAfcUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dE
20 AP4A/gD+6xjUggAAAAlwSFlzAAAXEgAAFxIBZ5/SUgAAAAl2cEFnAAAAVQAAAFAA8yp5GQAAJFFJ
21 REFUeNrdfXecVNXZ//fembnTy07f2dm+O9sXFtgC0kEBX9EQI0YRDWpiibFEjeaNJmqKRiXRBGI0
22 eWMvYAMEEYWlKGULZXudrbO703sv9/7+WCHbUDC0/J7PZygzd855zvc85zzn+Z7nnCFwsYRhILr+
23 DQTnlHD0va1Kud+ZJgr5c0RhfzY/GkzjR0PJVCwqpxJRMUnTPAAEACZBssIxNscfZVPOMMUfDlKC
24 /gBPaPTxxUaXSD5gyiiwC7+oi3m33QGwiYvStAtaK2d9HWJqNZFRd0CpdlsKlT57pcJrn6X0OfLl
25 fkeyLOCWSEJeDj8SJLixCDiJGFh0AgTDnCqDJkjQJIkYi4MIh4sQV8B4eeKoWyjzOcWKEbtE2eEQ
26 K+vtYsURq0zb2jdrvp1jszKxB8v//wGVfLkN9Pfzkf67txUpdlNVsntkeYrDNF/vMGVrXSNCud8F
27 fjQINp04pQwz5vvMFGUSU/ybARAnWQhyBXCJ5DDLtIEhhd44JE/5ciQp+bMhhf5I3/KbHJy2Jib2
28 YOl/J6jKR7bCI1Wy8ntOGFIdg6syrL3fyzIbi9PtA/wkvxNUIn4KDOY/q2pSg042KspiwyVMwqAy
29 LWzUZrf2qTO3DipTP+zMKmmXuBwJ63Pf/+8ANfmh9+EWK1j5/Y3TM6x9t+QPta/KG+pI0TmHCF48
30 es5BPJMGEgAibArDSTqmIyVvpCMlf0ufOuPV9rSSE1K/Mz68fvU5r/OcSNKvPoVr9gqidMvGvExL
31 zx3FA803FA80abRuC1gMDfoMGw+Mgk4TBBIECzRJgibIU8+RDA0WnQDJ0CAZZtx3vq2zSAAJgoRF
32 qkZrapG1Kb10c48m6+8NC25oVbYdYuxPX32JgPpSHyoOvgeHTJuUZe6+pbS/8WdlPceyUpzDIBn6
33 tA09CSKDUSvy8cXwCKSMRyCL+ARiX4Ar9IQovifKpgJxFifCAAwJhmAnYjwqHhPyoiGJIBKUikNe
34 sTTo4coCHkIU8oEbj4D8FpAJjDq84aRkHM+a2deYXrqxR5v1qspjdRwuWQI88p85tf8IVN2DmzGc
35 XU6U13w0u3Cw5deVXTVLDMOdbCoRO61lnrQWL18Mi0xLD8t1drMsucshVjS6hdJmP0/cHeCJhv08
36 kdMrkAR9Amk0IlUnQLIZJGIE12NhS4IeShzyCYThgEwYCejEIV+ONOgpVnrtJRq3OU/nGlJqXWZS
37 EvKB9XXHMqfRJcrioCs5N1FjqNrXmlr4ZG3JkoP6oXba9OcbLjyoRT95CR6BVFhgarutvLv2kYqu
38 Wp084JoSzJNWGaD4MClSaaM2e2hAmXbQkqTdbZOoaoeVaX32pSv9GB5mcHPK2SvzjhnQawjFZ9uF
39 Kdb+DKXXVql1m5em2QbmZFl69KmOQVIQCQLfAK5LKENtToWlLqfi2bbUglekAY+/+ZW7AOLsITrr
40 bwhfakTZ/m1wSFUpRYMtv53bdmBNyUAzxU7EJyl8snC3QIquZEOoIyWvtk+d8eGwPGVXT0ZBr9hi
41 jVn/eB3AO4f+spOBauNm+DTJ7Kz+1kydc/iKdGvfdflDbRWG4U6+LOiZElwCQJxkoyW1MPpV4fz3
42 mtOKH1O7zIO1M5Yj+GjV+QNV9/NNKO86ggFVRsn03hMvLmquXpRu6z9t73t5IrSmFgWb0kuqezTZ
43 /+zXZO6d+/Eb3vdeegNYrjx3QJ6ucTuGsHbdWlTf9BNJuqV3UZbZeGvJQOOSwsFWoSTsP+2oGlSm
44 orp48YETmWX3F/Y1Ht9ddQ3MT19z7kFNvf8dfO/IhziSN2dOeXfdxiWNu6erfPZJihEA4iw2OpMN
45 8bqc8kOdKXkvGnW5u1RDA4HGZ34GpFHnHcxJ4omh5J4NsGv1gqzhrivyhjrum2msn5s33MnmJGKT
46 jIIEYBcpUF26pLk2p/ynN3z17oE/rXwQgy+uOXegZt/zOq6u+QAHC+YvqOo88vLSxt150qBnyiHk
47 EMlRY6gyHc+a8WK3NufVzIFWR/Wqe8CsS7vwYE6UTf1Y9PbL6EvPk+eMdP2orOf4fZVdNWlKn33K
48 tnj5YlSXLOk+nDfnzlVHPtzz8vK70fPXW/5zUDN/9hqm9TZgSKG/bE77wX9d3viFQRzyTTnku5Nz
49 EwcK5+9qTi1+4ti0m+qlnbsYz0s3XWwoJ4ng7k0Izl+Nss9enFFkanlyXuuBFYaRLtbEJSABwM8T
50 YXfpUuOh/MtuyzYb99fmlqN7423fWD7rGwG971WkWU2wyjSllV1H/nlFwxdFkpB3SkBpgkRNblXw
51 SM6s3/9kLnXgk7sW8Njtn/MKCgq4fD6f29bWxp02bRq3sLCQa7PZuPv27ePeeeedXI1Gww2FQtyn
52 nnqK+/bbb3MpiuLqdDpuRUUF99ixY1yZTMadPXs2d9GiRdyFCxdy582bx50/fz73nXfe4T7//PNc
53 gUDAraqq4j711FPcV199lVtYWMgtLCzkrlmzhrtt2zbuNddcwy0sLORu376dS1EUd/369Vyl6Svu
54 jnUVVIHYYetUGfY1QkKBpqdpXWY2ixk/oXHjUaQ4h+Rhild+IrOsRuOxjnDmr4WjfttpcWN/E6hK
55 txM2qUpf0VnzwpLGPdOmGvKneoehsbBlnygcj70wUrL6gThNX8ho9KyFIAiM2P34Qb6GaaK11GD2
56 Ncyuz4RY0nwA/Fj4VDsZAOKQD4ubqouCXMGfjxhmr5UFXP3aJz+G+Terzg7UsltfxJBMI5zTfuip
57 xc3Vi6ZySmOFASCMBLCi7YD6+C6Fet/sStBjwshLWTgkASk3CHr11WhIz0DxjjcgmgCswu/Eoqa9
58 83x8ye8O5c25K7lvwG8+TXnkVG+W3foCjv/fvSgcaPnx3LYv16Tb+scBOurhOYizqXGgMQAEsTBm
59 7v0A9Y8+jrZeFwg252JjdkbC0DSqSjOx5A+Po2HFTQhy+OPaRgNIdQxiXuuB6wsHW+46/vC9RNm6
60 F88M1Iq1z0MS8mHWj/502Sxj/cMlA03UxHEcY3Gwu3QRtk6/HAGeaBKwvEQMsw5th6GmHj0mPwjW
61 N07dl4wwDIOZBXpk3HoDdhVehtgURlM02MIp7677ecUz6+fLgm6U3/z8t4NKs0j0K9OTCk2tj1V2
62 HdGxv+Y9/y0EagyVCC5bjPDcMlTP+x68fMmkyik6jqoT1ZheVw+NrgTRxCU9xY4TIRmAb14V6ovn
63 gZ4wgbHoBCq6a7WFppbH+1XpCoacPNjHvVNx83O4ed8byDF3r63oql2q8LsmLTGM6UVonjkLSlEC
64 aQouvoy78EZuJVwi+bjCGAAkncCivuOoOlqLHTsOIxiJ/VfMsWAYpKq5OF5UjM6MkkkGkxRwo7Kz
65 ZmHOSPeP/vbaz1ExwVrHgUoAePmKO3KKB5ruzhvuYE+cR22CJHhvuQtzF5SCjscAAH5rH7YNNOPd
66 onmwS9WTTJ9gaExrPQz3r3+JfXtOABwewFz6VkvHoigpTUVw3d2wiBST5tfckS5WyUDTXbf9eGM+
67 MaE9pzCoXPscal5/CFmWnh+V9RzP48aj4x6MESQ6FlyNFbdfD7mIB+brggiCQMQ9AlZRCqqXXodh
68 qXYysGBQ2FGL8j2fYqjHgyjYuLD8/9kLA0Am4OJ/bv0BuhevQpQY7xeoRAzTe49nZ1p6b6t54iGi
69 8ubnJoNKACj+yUt5BabWG1Idg+O8PQmgW1+A3DtuR16qAlMtQeUCEkSWDIdWrkFfkm7KYV482IKZ
70 Oz5AjrYQMYK65C2WZhjk6hUouPN2dGUUT7LWFKcJhabW1aVPbywca60kAFStfRb3b/8T0m391xcO
71 tmSx6cSpBwgAPjYPnqt/iCVLZp1WAYZhoBRRsJBuvJlXjj5t1iRgGQAFlm5c31qH/R8fwLDT913o
72 ygsuixaUwb/qRngpwbg2sWkaRQPNaenWvh8efvMXqLz52X+DyhAEHrvh97pss/HaFOfQpEV+d24Z
73 Zq35PuQi3rcqEPHakVKaAv9DT6I7JW9KYLMsPVD8+Sl88sqHiBL8S955SQUUKn/4PRjzxhsVDSDZ
74 NYwcs/H7eXf9M/UklUJWrv0jZAE39E7TYsNwRyH3awcEfG2lHD7Cy66JlpflntFYZRhAIebjxruu
75 Q8f169CoywMxATYGQJp9AHN2vINwpxXOEAPyEjfZmaVZMd/C5XbPBGulEnEYRjry9A7TUqXXhtlr
76 nwVJEAR2zf0hJ8VhWplqH2BPXEL1qDJC6suqDoh5nMSZKsAwDGQCLoRKoH3VDTiWVjxpW4IGkOq1
77 oGrbGyhgyUEIFaDpb9tzvXgi5LLDwrKyD3rUWcGJSyy93cRKcZpW7ii/hksDIMEAhW0HM9JtA7Mn
78 MlBRFgcdyYa2svKiL3CakPabhM8mwROG8bpKh+OGCtBTAKvx2nBLZy2Gdh5CY9fQpTzHkpVzp1d3
79 6gwtEfa/ifZRwsWLdFt/ZUnviSwCACkJeqH2WCr1jgEda4wHIwDYJCr0KNM/L01XDuM7bhLGIyEI
80 +CGIf/VrNExbCJpkTfKiioATxe/9DTuf/BMsPgYkedb9d0FAnZOrNfco0j61SlTjLIwEkGof1Kq8
81 1iq53wny8w9+C7XXdpnWbWFNHPompT7YJ1TuIoDEdwWVYRhQbBLXXjMf1D33YG9uJeIszqQoRRb2
82 Yfaud6Bo7sWAPQzy0uQLmD6h6vNBZZp3Yr6X2mMh1R7b3E8/epogNQ9/IFd7rGXi4MShz4ZJru9u
83 Cwoa8B2G/kThUWwoJAlYll+OA6ULEZ2CrJBEg5i790MU9NsgUmUjcenNsWR7WNxsUug7o6x/s28n
84 OVeV11qq+/kmJal2W9OVXls6lRjv9f08MSwyzVHm0/kunKP0IBIMdHIWPqYI7J62GCE2dxKw/GgQ
85 13bXQH2oHnsOtYxyspfOPEswv8nyWmSaeq9gPInEScSh8trSVV5bJikNeQxyn1M2MT3RKUqCU6w4
86 +tFHvpNvnQudwNAJxHwmpN3zY5xYsQaBCUsUBgAvHsGsA1vQ8MhjaGi3gLyEONk3OjhwieTHXCL5
87 pJROuc8plQS9+WxRyG+QhjyTVvUukTzkEUjbInzROVeMADB/lgFmQw62OZxYdmwPxGHfOKadS8cx
88 48gOxP0+dLPmIF3HBzGJhrzwQotE8Aik7S5Rkh/AOHCkQQ8lDvvySGEkkCUIB8bNpzQAt1Dm9vHE
89 JkWS+LwoRxIEtBISoVkF2LfoWrj40kkWy6ETqGo+gNw9u2G2JRC7BKgCrVIGL19scgtkzrEzPgNA
90 EAlAGA5kkvxISMeLRcZ9kSZJ+Hkih0codepU0vOjHUGAYRjo5VwcJQN4f9pCOESKKTnZ2V11yNz2
91 MbweNkKxM45BzovoNTK4RHK3nydyJMjxKxRuLAJ+NKQjufGwij0hSyNOshHm8Fx2sTIklwrPu6Ih
92 xyDSrrwMxtsehFkymZMFQ6OivwHZH22C38VCKHbxVgXKJBGsCn0oRPEdcda/900ZAOxEHNxYWEFy
93 4nERix7f+zTJQoxN+SPqjJiQf/7TdBiGQa5eie//4g7sX3Y9BmXJUwDLYPpAE8p2fgTbQABR5uKs
94 Y0V8LpBTEY+yKX9iQiDDYhLgJGJCkmQSFIHxkRRNEIizWBFoc2gO+8IozzAMNFIKRJoYtdesRY9c
95 PyXDlT/QggX7PsUnb38GqztwwRkuFkkAKQRDk6zY2AxvACAYBiTDUKMU/AQHwIAAA4IBCwxxAdVm
96 GEAhYmMg4MNr2dNxC5eHrJHuSadVcka60Lv+CbwZCMBKhyAgL6CO4/+Y8nOSJsgoM2Z1zWA0r55N
97 J7gw97FiiQvtGAhEvA7Is2QIPPwEOlMLp7TYTFs/kjf8Ae4WM3xxFi7U9gzDMIAVBEnTnIm5VwxB
98 gCbIKBlncfwTvRiLToCKRUSU2cjxByNnV+s5UjxJxMVNd/wA/Wt/jOO6fBDEFJysaxjL9m+Fs64b
99 YUJwQXQLhKJAZz2bSsSErAlhdIJgIc5iB8gwh+uIs9gTtgni4EdDcpXXxnd4Ahcc1JPASgVciORA
100 x/euR3166ZScrMY1gpVHduLYW5+gy+Q87yGt3e2H0jHI40XDchb972DkZF5uhMN1skNc/kiEwwNC
101 vlMPkDQNUdgvlwY8crPdYy/J0V0UYAGAywLUWg5arrgSzAE+ZnTUnjoccRJYtd8B8q2/4uNYDIG8
102 lElWfS7FZHFD7nPKhGG/cmKiSZTDRZjiD5MBrqgnwB0ff5MApEGPTBz26e1O31lVej6EpOPITBej
103 4bJ5OFq6AHFiCk425EHhe3+DY/s++GnBqS30cy1mmweSkFcnDXrkY30/ASBICRDgCntJP0/U5RVI
104 J02cSX6XQBr0FHBD/ouN6ehhtXgMORlSNFdVombGUkRJ9mTqMOzDVUd3If75V/DT5ydoYfxeSIOe
105 fIXfMYkU8QokUR9P1EF6BZIOp0jumbhsSQo4keR3lX1/wbfvoF4woePQqzgwLZyL/WVLEGZNkXUY
106 DmD50S8Q+ehT7K/r+NaThmcrt6RGIPc7Z8p9TmIiZk6R3OsVSDtIm0Tdb5Oo+qciXTVu80xizWEZ
107 cM51+07CMABJADJeBHm/fAjHlq5GcApOVhAPY2b1+6j9xWPY/WUTGOKcrbYZ4uk+scpjnTlxPy/G
108 YsMmVQ/aJcpecmT9dQ6bVH3cxxdP2nrVO0w5+aJgyaUC6kkhCWBhVQHmP/Mkai//IXwTcklPpnPO
109 OLAF/r//A/6IEJF44lw4MNog8hfqHaZ8akxa1MmzAVapusH0wA02cvm1v2KsEtVBq0xDT1Qs1TEo
110 ygjYrwBOHfe8ZIQAUDUtE6HZ07Bn3jXwTjCKUeowjkUdhyF45x1s2X7wXABLZATtl6faB6UTCWqr
111 VMNYJeqDV937CE26hTLYpOqaQUXqyNhcTAaA0mNDtmNgedOgI/lSA/VkY6RUBJz5M7Cj6n/gEiZN
112 og7ZdALTT1TD8vhjMPa4wUxwcGchTF2vTZXhGFyh8VjGDV0agEmpt9ikqsN2iXJUh+ac8t5+VfoR
113 r2B8b3MTMRhGOguP1bYsxSU2BZwUkiDBTfgw/UfXovPm+2CZipNlGExvO4zKg/tRvfsYAtHvFHon
114 Dn91YkHecOe0sfwzAcDPF6NflVHbnFZsBAGQDMngyiMfRocU+k9MitTExCGUZe0VWA7VLPJH4pfk
115 njEwGn0VZKiw+okH0HHLfRiagpMlwKC0+yioPz0Dry2B4FluI4RiCZ7v2PHVORajcNJWvlxPmxT6
116 7VfVfxIGA5A1rz8Ch1gBk1y/p1NnaI9OIF4lsRC4u7ZRRxuNZzRqplp0n3yPYZgpX2Ofm/j9qf4/
117 9rmT/6ZpBulqCdIWTMPOuVdhUJE65TAvNbVi1s6P8f5r2+Dwhs44rD3R2s8R7t+llUX8470+yUKX
118 ztA9JE/5wiLV4sibvxjtUIJhUPfSbSajNuejkSTdpF7O7jqG2ne3wB2Mfmvler0eWq0WAKBUKqHR
119 aJCZmQmSJCGVSqFSqZCTkwMejwcejweVSoWMjAwkJSWBxWJBrVZDp9MhJSXlVBlcLhcAwGazoVKp
120 oFarweGMLgEVCgXUajWEwtHFvlLIRtlVs1H3vbUY0GZPyXDlmtrAf+Zx1H5eD5ojxLe5C184hkPv
121 bEFWa82490kA5qRkdGuzt7a/9OO+k7w0CwBMjV9g39pnYZeoLNKgZ2WWxSgdm8TKT8TgNlvhKJ6F
122 /Fw9mpqa4HA4QJIkWlpaYLVaUV5eDolEgnvvvRcymQwDAwNITU3FsmXLYDAY0N/fDz6fj0WLFmHu
123 3LmwWq0IBoOoqqrC8uXLEYvFYDabUVRUhBUrVkCpVKK/vx96vR7xeBxWqxVKpRLr1q2DQqGA2WyG
124 SCRCWVkZ0tLSTulTVFyMgtwssGQC7I3wwB42QxVwTQIqye+E0m6FUZYBS8QHDkEjJSUFBoMBHR0d
125 GB4ehlAoRGVlJT7fexyB557GxBPjNEHiiKFquD6n4peZH+w3H3nrkVNgj/YgQaDx6Z+2tekLNw/J
126 9eOslQaQ29+Ctr//H4zDLpCnIYVJkoTb7cbbb7+N+vp6OJ1OsNlsbN68GQcPHkRfXx/4fD727t2L
127 nTt3oq2tDSwWC0ajEZs3b0ZDQwPC4TDC4TDeeust1NXVwWq1gvV1ChCbzUZHRwfef/997N+/H/v2
128 7YPH48Gbb76JmpoabNu2DcFgEO9/8AE6m45BmipA7813oCO9eJKuDIBMxyBS//4M7Mf6EKQn5xaQ
129 BIGeEReaXnkNht6GcYCSAIblOrSmFm0+sepnjYkxaUqnsKt542FU/vx5pleT+c/jmWXGsREWAFBM
130 AjnVH+PTf30AXygGFkmCIIhTyWQkSYIkSXg8HlitVvj9fpAkiUgkgqGhIfh8PtA0DYZhMDw8DK/X
131 i3A4DDabDZvNBqfTiUAgADabDZ/PB4vFAp/PB4IgTr0YhsGuXbsQDAbB4/GQnZ2N+vp69Pf3gyRJ
132 ZGdnw2Kx4MiRI2AAFOZm4p6H1oF8/PdozZmJiTkhNIAU1whWfLUdtkOtiJCjnOxouwgEonFsf30L
133 sj5/H1x6PCMVY7FxPLOsr0ed+c+qzc/Rta8/dOqzcR49ZfoyvPTq/Y5Ns6/jqD3WJRqvjRzbO6Jo
134 CK7efjiLK3HVVUtRVFiIiooKrFy5EosXL0ZJSQmUSiWKioqQkZGBzZs3Y9q0acjPz8fMmTOxc+dO
135 iMVilJaWoqKiAt3d3eju7kZlZSXKyspAURS2b9+OOXPmoLCwEAaDAZs2bUJlZSXKy8uRm5uLw4cP
136 IysrC7NmzUJ1dTUIgoDb7cbq1atRXV0NPp+PpqYm3HTTTTAajSBB48qrr8AuLw1b3xB0HsukIEEU
137 9kNvNaGdSIJiWimy07RIz8hCa6cNwlc2INtsnGSlnToDvb9o4XMH3/nfj14pW4bhhs9PfT7ubGrt
138 Gw/hnlv+BKdY/lpNbuWVOtfwYlnAPS5zxNDXhGPvvw/7nEosmVOIwsLCcT3Y1tYGiqKQlJQEgUAA
139 v9+PeDwOjUaDpKQkhMNhMAwDg8EAtVoNr9cLt9sNiUQCrVYLNpsNj8cDFosFrVYLgUCA5ORk5OTk
140 AAAMBgNUKhUAwOfzoaysDH6/H3w+H16vFxKJBHl5eZDJZPD7/YjFYoiHgyBIJ2S/eRINf3kRJQ37
141 waYT4zhZZcCFonc3Yks4jCufeAjuMAXutk+Q33Ni0lkyD1+C2tzKr4zJOf9Xcct61L3+4DgMJh/4
142 JRik2/odralFv9U7h4oWN+3RkGO2sFlgUFK/G7VPPQPO7x83zZ+Z2zJ2XCUSCWzcuBH9/f1Ys2YN
143 9Ho93nvvPfzhD39AaWkpKisr8e6772L9+vXg8Xh49tlnYTQa8fzzz8PlcuHRRx+FQCDAhg0bYDQa
144 cfXVVyMzM/NU/fPnz8fDDz8Mv9+Pxx57DOXl5di2bRs2bdqEG2+8EbNnz0ZjYyPWrl2LGTNm4O67
145 74bZbAafYuOG65fh1ThJHV4fnVHVVSMZeysFAyAp7EPpR//AVq8PRCyKypqdYE/YF6VJEvU55faW
146 1KLfZVj6rB6RBGckZbe+AOxmiGXX/uqRDWklsf0As2/Maz/AfEoJmIeqVvUv/+mGFQzDsBmGoU6+
147 nnnmGSo5OZnq7u6mGIah9u/fT0mlUurDDz+kGIahrFYrlZeXRz3wwAMUwzAUTdPUjTfeSFVVVVF+
148 v59iGIZ6+eWXKYVCQTU2NlJjy2YYhlq3bh01b948KhgMUgzDUP/6178ojUZDtba2UgzDUI2NjZRK
149 paJef/11imEYaseOHdRbb71FMQxD/bXWxFt8/RM/eaJ4keMLNsVM1bZdLIrZdZrP/pZaFF+x6peP
150 4xUTWXbr1Ad+T7v0nXHrC7CJVeI5HYdevrpuyw2pjqFJJ6n9PBH2lCzuOWyY87PDbz3yaco9b2Jo
151 481n1nMXSXJ/+i905c8mFxz64Ia5rV+un992QMOLhr+V2CABDCXpsLXimg+O5M3+sdzndB979f4p
152 nz1t6EktXY1kuzU6JE85FmdRs/SOwTRBNDTuGW48ijTHYBLBMIvZ+3ttXWmFLZnFC2ln3daLjd1p
153 xVm3FdlZs5jjN93bzJhMxgTJmqNzDknH5udOFAKAWyjD59OX1R7Lmnm33O8aDnN4sB779OxA9Rza
154 CkHVaqS4R9x96szGOIs9L9UxqJp4vJJKxJBmHxDzoqElLDpBWaWaE5lFC8LmWzcCO/9ysTGcUlx1
155 W5Eiz8dV9dvbq0uXDALEiiyLkUtOEWITAAI8IfaULu2qza28U+W1NlplGrS8ctdpy/9GksR59BOw
156 59+M6f0nhpvSSltpkjVP7zAlTexVNp2A3jHEVfgcc2mSLLRJ1e3m3y+3yGPlCH35zsXGcJLInvwM
157 1qdX4cGr7ivIG+64a1pfwzS11zoppCEABLkC7C1ePHAo/7K7yo11+49mzULH33/yjeV/K/PkrN+G
158 wJU/xaMf/bHvwznXtsdZ7LkpzqGkiRZLgIHaayPTbP35VDy2TLC7PRHgCjoMhqrI8O0bgZ0bLjaW
159 wBYGZZQYCYIt/iS99ObZHYf/ennj5wuyrL2T8uEIAAGuEHuLF/cfLJj700NvPfrZ/St/jq6Xbv/W
160 as6IznPVbsWJ2/+CPf+4x/jsktuawxS/XOseUQmnmOBFkSAyrT1JSp/jcioeLXeJlY4IGJO+aGHc
161 8cQnwLtPXngwexhkRdIA9whX7bEtmmE8+vzi5up75nQe0simuGyHxOgcuqd0aefhvMvuPvTWo59l
162 3fMajBtvPaPqzpgjddVuwZuPfITFRz/rPVxwWY2PLy6W+xyp0tDkvAAWTUPrsbCyLMZsud91tSjo
163 LQnzBL6EfWSkWGGImTbsAN58+vyD2UWj2C4Cuq38FNfQ/FmdNU/Oa/vysYUte0syrX3siSmkwKiF
164 Dst1+Hz6spoaQ9UdK49uP3D92udgOsPb006WcVYieHI3Zjfth1muyygeaPr9vNYD1xWa2jisMRHK
165 xMKdoiR06PL97fr8Q/3K9E3DipQ9nYYyk8huS/h+t/w73fz4jTo+UY2gXE0a2mtSdI6hRem2/uvy
166 htvn5w21SxR+JwiGmVLXBMlCe0p+/EDh/I+b00oeTXGaeg7lzoHvmavOqv7v1poBBqVPbIBHLBMX
167 DLbdXdFV82B5d51KGvKe9lJCAPDxRBhQpsV7tNn9A8q0AxaZ9gubRFU/qMsZ9P1mSRh7gsDS75AE
168 sScILOZD/FQ1L2W4O0Xttc3QuC1LU+0DC7PNxqw0ez9b8vWIOt1ljx6+GPXZ5fba3MoX2vUFG6QB
169 l+fErKuAu7PPWp3/yERS738bg5pMsrL1q4XFg82/ruysmZdtMZJTXft5srLRKzVZcAukGElKjg/L
170 U8wWmbbNLlY0eISyZh9PZAzwRGafQOJxCZNCAVVGFAotDSmPgSNAwGsn+Y4BTpLPwZcEvVJRyK8V
171 h31Z0qCnSO5zTNe4LQUpzqHkZNcIRxZwgfP1CDqdPgmSBaMmi64xVB1sTit5qrZg9l69dSAx8MKZ
172 D/dzCioA4M0GLNzyMYY1enWWuef20r6GO2f0HkvVus1TDrOJANMEgRCHB69AArcwifYIpEEvX+IJ
173 cgWuMMXzRNlcX5xkRRiSjBM0zWHRCYqKR4W8WFgmDAeSxCGfTBZ0C2QBNykJesCLhcH6ut5vqpsh
174 CFikGhzPLBtqyJj2sjE555XUoR7L3utuBn1T/n8EyTmbzFS/3ApbWgFRVrezNMvSc1dJf+MPigZb
175 FCqvDSTDnNVF3zRGiYsEyUKCZIEmSDAECYKhRy/4pkcv+2bRiVOE8Jle9E0TBGxiJVpTi1xN6aUf
176 G7XZG45PW9KgHu6irX9chXMh5zznMPW+t+GRyjmG/tZZmda+W/OG2lfmDbdrtC4zuF+zQmebQDCR
177 /zzb7xIYPWtrlmnRqcuztqcU7OjVZL7ao8utEftd0b4zuL7zooJ6UnQPvAefWM7JNrUX6R2D12Za
178 e6/ONnfnp9kHKWnADc7Xy5nzce//xLl7UJka7dFkd/Vqsj4ZVKa+b9TnN4m9ztjQn394zlce5xXU
179 k0Ktr0E0PZ/I3vexWuccuizZOXxlqmPwshSHKUPrtvBkARd40TDYY67YZCb8/U2Kj21AgiAR5vDg
180 FspgTtJGTAp9v0mRenA4KXnniDzlq+7KZWauuZ+J/GL2eW3zBT0xI3hiL4IKBZnTflSr9lhKFV57
181 ldLnmKX02nLlfodaFvCIxCEvmx8NgRuLgE3HQdKj8+hJOfmDNHGSPfqDNBQfPr447hHKAg6RwuoQ
182 K7rsEuVRu1h1xCZVN3TnTTML7M5E4LeXX7B2XrxD3w0xoJQN/tNf8XRD3RpZwJ0hCvtyROFAjiAS
183 TOdHQzoqHpWxEzERi06c+ukkmiAjoz+dxHWHKP5IkCvoD/CE3T6euNsjlPYO6XLMof+dF8aJOFB2
184 cU5f/z+rXz1t3lG/LgAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxMi0wOC0xMFQxMzoyNjoxNSswMjow
185 MJsC4wUAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTItMDgtMTBUMTM6MjY6MDkrMDI6MDDhVTFTAAAA
186 GXRFWHRTb2Z0d2FyZQBNaWNyb3NvZnQgT2ZmaWNlf+01cQAAAABJRU5ErkJggg==</field>
190 <record model="ir.ui.view" id="view_pos_pos_form">
191 <field name="name">pos.order</field>
192 <field name="model">pos.order</field>
193 <field name="type">form</field>
194 <field name="arch" type="xml">
195 <form string="Point of Sale Orders" version="7.0">
196 <div class="oe_form_topbar">
197 <button name="%(action_pos_payment)d" string="Payment" icon="gtk-apply" type="action" states="draft" context="{'pos_session_id' : session_id}"/>
198 <button name="action_invoice" string="Invoice" icon="gtk-apply" type="object" states="paid" attrs="{'readonly': [('partner_id','=',False)]}"/>
199 <button name="refund" string="Return Products" type="object" icon="gtk-ok"
200 attrs="{'invisible':[('state','=','draft')]}"/>
201 <button name="%(action_report_pos_receipt)d" string="Reprint" icon="gtk-print" type="action" states="paid,done,invoiced"/>
202 <div class="oe_right">
203 <field name="state" nolabel="1" widget="statusbar" statusbar_visible="draft,paid,done" statusbar_colors='{"cancel":"red"}'/>
207 <group col="4" colspan="4">
209 <field name="date_order"/>
210 <field name="session_id" required="1" />
211 <field name="partner_id" on_change="onchange_partner_id(partner_id)" context="{'search_default_customer':1}" attrs="{'readonly': [('state','=','invoiced')]}"/>
213 <notebook colspan="4">
214 <page string="Products">
215 <field name="lines" colspan="4" nolabel="1">
216 <tree string="Order lines" editable="bottom">
217 <field name="product_id" on_change="onchange_product_id(parent.pricelist_id,product_id,qty,parent.partner_id)"/>
218 <field name="qty" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
219 <field name="price_unit" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
220 <field name="discount" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
221 <field name="price_subtotal"/>
222 <field name="price_subtotal_incl"/>
224 <form string="Order lines" version="7.0">
226 <field name="product_id" on_change="onchange_product_id(parent.pricelist_id,product_id,qty,parent.partner_id)"/>
227 <field name="qty" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
228 <field name="discount" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
229 <field name="price_unit" on_change="onchange_qty(product_id, discount, qty, price_unit, context)"/>
230 <field name="price_subtotal" invisible="1"/>
231 <field name="price_subtotal_incl" invisible="1"/>
232 <field name="notice"/>
236 <group class="oe_subtotal_footer">
237 <field name="amount_tax"/>
238 <field name="amount_total"/>
239 <button name="button_dummy" string="Update" icon="gtk-execute" states="draft" />
242 <page string="Payments">
243 <field name="statement_ids" colspan="4" nolabel="1">
244 <tree editable="bottom" string="Statement lines">
245 <field name="journal_id"/>
246 <field name="statement_id" />
247 <field name="amount"/>
249 <form string="Statement lines" version="7.0">
251 <field name="account_id"/>
252 <field name="amount"/>
253 <field name="statement_id" domain="[('company_id','=',parent.company_id),('state','=','open')]"/>
258 <page string="Extra Info">
259 <group string="General Information">
260 <field name="company_id" groups="base.group_multi_company"/>
261 <field name="shop_id" widget="selection"/>
262 <field name="user_id"/>
263 <field name="pricelist_id" groups="product.group_sale_pricelist" domain="[('type','=','sale')]"/>
264 <field name="picking_id" readonly="1"/>
266 <group string="Accounting Information">
267 <field name="sale_journal" domain="[('type','=','sale')]"/>
268 <field name="invoice_id" readonly="1"
269 attrs="{'invisible':[('state','<>','invoiced')]}"/>
270 <button name="%(pos_invoice_report)d" string="Re-Print"
271 icon="gtk-print" type="action" attrs="{'invisible':[('state','<>','invoiced')]}"/>
272 <field name="account_move" readonly="1"
273 attrs="{'invisible':[('state','<>','done')]}"/>
276 <page string="Notes" >
284 <record model="ir.actions.act_window" id="action_pos_pos_form">
285 <field name="name">Orders</field>
286 <field name="type">ir.actions.act_window</field>
287 <field name="res_model">pos.order</field>
288 <field name="view_type">form</field>
289 <field name="view_mode">tree,form</field>
290 <field name="view_id" eval="False"/>
291 <field name="domain">[]</field>
292 <field name="help" type="html">
293 <p class="oe_view_nocontent_create">
294 Click to create a new order.
296 Use this menu to browse your preceeding orders. To record new
297 orders, you should better use the menu <i>Your Session</i> for
298 the touchscreen interface.
302 <record model="ir.ui.view" id="view_pos_order_tree">
303 <field name="name">Sales</field>
304 <field name="model">pos.order</field>
305 <field name="type">tree</field>
306 <field name="arch" type="xml">
307 <tree string="POS Orders" colors="blue:state == 'draft';gray:state in ('done','cancel');black:state not in('done','cancel')">
309 <field name="partner_id"/>
310 <field name="date_order"/>
311 <field name="user_id"/>
312 <field name="invoice_id"/>
313 <field name="amount_total" sum="Amount total"/>
314 <field name="company_id" groups="base.group_multi_company"/>
315 <field name="state"/>
319 <record id="view_pos_order_filter" model="ir.ui.view">
320 <field name="name">pos.order.list.select</field>
321 <field name="model">pos.order</field>
322 <field name="type">search</field>
323 <field name="arch" type="xml">
324 <search string="Search Sales Order">
325 <field name="name" string="Sales Order"/>
326 <field name="date_order"/>
327 <filter icon="terp-document-new" string="New" domain="[('state','=','draft')]"/>
328 <filter icon="gtk-apply" string="Done" domain="[('state','in',('paid','invoiced','done'))]"/>
329 <filter icon="terp-check" string="Invoiced" domain="[('state','=','invoiced')]"/>
330 <filter icon="gtk-convert" string="Posted" domain="[('state','=','done')]"/>
331 <field name="user_id"/>
332 <group expand="0" string="Group By...">
333 <filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
334 <filter string="Salesperson" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
335 <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
336 <filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
342 <menuitem name="Daily Operations" id="menu_point_of_sale" parent="menu_point_root" sequence="10" />
343 <menuitem parent="menu_point_of_sale" id="menu_point_ofsale" action="action_pos_pos_form" sequence="2" groups="group_pos_manager,group_pos_user"/>
344 <menuitem name="Products" id="menu_point_of_sale_product" parent="menu_point_root" sequence="15" />
346 <record id="product_normal_action" model="ir.actions.act_window">
347 <field name="name">Products</field>
348 <field name="type">ir.actions.act_window</field>
349 <field name="res_model">product.product</field>
350 <field name="view_type">form</field>
351 <field name="view_mode">tree,form,kanban</field>
352 <field name="context" eval="{'default_pos_categ_id': ref('point_of_sale.categ_others')}"/>
353 <field name="domain" eval="[('pos_categ_id','<>',False)]"/>
354 <field name="view_id" ref="product.product_product_tree_view"/>
355 <field name="search_view_id" ref="product.product_search_form_view"/>
356 <field name="help" type="html">
357 <p class="oe_view_nocontent_create">
358 Click to add a new product.
360 You must define a product for everything you sell through
361 the point of sale interface.
363 Do not forget to set the price and the point of sale category
364 in which it should appear. If a product has no point of sale
365 category, you can not sell it through the point of sale
371 action="product_normal_action"
372 id="menu_pos_products"
373 parent="menu_point_of_sale_product" sequence="2"/>
375 <record model="ir.ui.view" id="view_pos_order_line">
376 <field name="name">Sale lines</field>
377 <field name="model">pos.order.line</field>
378 <field name="type">tree</field>
379 <field name="arch" type="xml">
380 <tree string="POS Order lines">
381 <field name="product_id" readonly="1"/>
382 <field name="qty" readonly="1" sum="Total qty"/>
383 <field name="discount" readonly="1"/>
384 <field name="price_unit" readonly="1"/>
385 <field name="price_subtotal" readonly="1" sum="Sum of subtotals"/>
386 <field name="price_subtotal_incl" readonly="1" sum="Sum of subtotals"/>
387 <field name="create_date" readonly="1"/>
392 <record model="ir.ui.view" id="view_pos_order_line_form">
393 <field name="name">Sale line</field>
394 <field name="model">pos.order.line</field>
395 <field name="type">form</field>
396 <field name="arch" type="xml">
397 <form string="POS Order line" version="7.0">
399 <field name="product_id" />
401 <field name="discount" />
402 <field name="price_unit" />
403 <field name="create_date" />
409 <record model="ir.actions.act_window" id="action_pos_order_line">
410 <field name="name">Sale line</field>
411 <field name="type">ir.actions.act_window</field>
412 <field name="res_model">pos.order.line</field>
413 <field name="view_type">form</field>
414 <field name="view_mode">tree</field>
415 <field name="view_id" ref="view_pos_order_line"/>
418 <record model="ir.actions.act_window" id="action_pos_order_line_form">
419 <field name="name">Sale line</field>
420 <field name="type">ir.actions.act_window</field>
421 <field name="res_model">pos.order.line</field>
422 <field name="view_type">form</field>
423 <field name="view_mode">form,tree</field>
424 <field name="view_id" ref="view_pos_order_line_form"/>
427 <record model="ir.actions.act_window" id="action_pos_order_line_day">
428 <field name="name">Sale line</field>
429 <field name="type">ir.actions.act_window</field>
430 <field name="res_model">pos.order.line</field>
431 <field name="view_type">form</field>
432 <field name="view_mode">tree</field>
433 <field name="view_id" ref="view_pos_order_line"/>
434 <field name="domain">[('create_date', '>=', time.strftime('%Y-%m-%d 00:00:00')),('create_date', '<=', time.strftime('%Y-%m-%d 23:59:59'))]</field>
441 <record model="ir.ui.view" id="view_pos_trans_user_form">
442 <field name="name">report.trans.pos.user.form</field>
443 <field name="model">report.transaction.pos</field>
444 <field name="type">form</field>
445 <field name="arch" type="xml">
446 <form string="POS " version="7.0">
448 <field name="user_id"/>
449 <field name="journal_id"/>
450 <field name="jl_id"/>
451 <field name="date_create" widget="date"/>
452 <field name="no_trans"/>
453 <field name="amount"/>
454 <field name="invoice_id"/>
461 <record model="ir.ui.view" id="view_trans_pos_user_tree">
462 <field name="name">Sales by user</field>
463 <field name="model">report.transaction.pos</field>
464 <field name="type">tree</field>
465 <field name="arch" type="xml">
467 <field name="date_create" widget="date" />
468 <field name="user_id"/>
469 <field name="journal_id"/>
470 <field name="jl_id"/>
471 <field name="no_trans" sum="Total Transaction"/>
472 <field name="amount" sum="Amount total"/>
473 <field name="product_nb" />
474 <field name="invoice_id"/>
480 <record model="ir.ui.view" id="view_report_transaction_pos_calendar">
481 <field name="name">report.transaction.pos.calendar</field>
482 <field name="model">report.transaction.pos</field>
483 <field name="type">calendar</field>
484 <field eval="2" name="priority"/>
485 <field name="arch" type="xml">
486 <calendar color="user_id" date_start="date_create" string="POS Report">
487 <field name="journal_id"/>
488 <field name="amount"/>
493 <record model="ir.ui.view" id="view_report_transaction_pos_graph">
494 <field name="name">report.transaction.pos.graph</field>
495 <field name="model">report.transaction.pos</field>
496 <field name="type">graph</field>
497 <field eval="2" name="priority"/>
498 <field name="arch" type="xml">
499 <graph type="bar" string="POS Report">
500 <field name="user_id" />
501 <field name="amount"/>
502 <field group="True" name="journal_id"/>
507 <record model="ir.actions.act_window" id="action_trans_pos_tree_today">
508 <field name="name">Sales by day</field>
509 <field name="res_model">report.transaction.pos</field>
510 <field name="view_type">form</field>
511 <field name="view_mode">tree,calendar,form,graph</field>
512 <field name="domain">[('date_create','=',time.strftime('%Y-%m-%d'))]</field>
516 <record model="ir.actions.act_window" id="action_trans_pos_tree_month">
517 <field name="name">Sales by month</field>
518 <field name="res_model">report.transaction.pos</field>
519 <field name="view_type">form</field>
520 <field name="view_mode">tree,calendar,form,graph</field>
521 <field name="domain">[('date_create','like',time.strftime('%Y-%m'))]</field>
525 <record model="ir.actions.act_window" id="action_trans_pos_tree">
526 <field name="name">Sales by user</field>
527 <field name="res_model">report.transaction.pos</field>
528 <field name="view_type">form</field>
529 <field name="view_mode">tree,calendar,form,graph</field>
530 <field name="view_id" ref="view_trans_pos_user_tree"/>
534 <record model="ir.ui.view" id="view_report_sales_by_user_pos_form">
535 <field name="name">report.sales.by.user.pos.form</field>
536 <field name="model">report.sales.by.user.pos</field>
537 <field name="type">form</field>
538 <field name="arch" type="xml">
539 <form string="POS " version="7.0">
541 <field name="date_order" widget="date"/>
543 <field name="amount"/>
544 <field name="user_id"/>
551 <record model="ir.ui.view" id="view_report_sales_by_user_pos_tree">
552 <field name="name">report.sales.by.user.pos.tree</field>
553 <field name="model">report.sales.by.user.pos</field>
554 <field name="type">tree</field>
555 <field name="arch" type="xml">
557 <field name="date_order" widget="date"/>
559 <field name="amount"/>
560 <field name="user_id"/>
565 <record model="ir.ui.view" id="view_report_sales_by_user_pos_calendar">
566 <field name="name">report.sales.by.user.pos.calendar</field>
567 <field name="model">report.sales.by.user.pos</field>
568 <field name="type">calendar</field>
569 <field eval="2" name="priority"/>
570 <field name="arch" type="xml">
571 <calendar color="user_id" date_start="date_order" string="POS Report">
573 <field name="amount" />
578 <record model="ir.ui.view" id="view_report_sales_by_user_pos_graph">
579 <field name="name">report.sales.by.user.pos.graph</field>
580 <field name="model">report.sales.by.user.pos</field>
581 <field name="type">graph</field>
582 <field eval="2" name="priority"/>
583 <field name="arch" type="xml">
584 <graph type="bar" string="Sales by User">
585 <field name="user_id" />
586 <field name="amount"/>
591 <record model="ir.actions.act_window" id="action_report_sales_by_user_pos_today">
592 <field name="name">Sales by User</field>
593 <field name="res_model">report.sales.by.user.pos</field>
594 <field name="view_type">form</field>
595 <field name="view_mode">tree,calendar,form,graph</field>
596 <field name="domain">[('date_order','=',time.strftime('%Y-%m-%d'))]</field>
600 <!-- Sales of user by month -->
602 <record model="ir.ui.view" id="view_report_sales_by_user_pos_month_form">
603 <field name="name">report.sales.by.user.pos.month.form</field>
604 <field name="model">report.sales.by.user.pos.month</field>
605 <field name="type">form</field>
606 <field name="arch" type="xml">
607 <form string="POS " version="7.0">
609 <field name="date_order" widget="date"/>
611 <field name="amount"/>
612 <field name="user_id"/>
619 <record model="ir.ui.view" id="view_report_sales_by_user_pos_month_tree">
620 <field name="name">report.sales.by.user.pos.month.tree</field>
621 <field name="model">report.sales.by.user.pos.month</field>
622 <field name="type">tree</field>
623 <field name="arch" type="xml">
625 <field name="date_order" widget="date"/>
627 <field name="amount"/>
628 <field name="user_id"/>
633 <record model="ir.ui.view" id="view_report_sales_by_user_pos_month_calendar">
634 <field name="name">report.sales.by.user.pos.month.calendar</field>
635 <field name="model">report.sales.by.user.pos.month</field>
636 <field name="type">calendar</field>
637 <field eval="2" name="priority"/>
638 <field name="arch" type="xml">
639 <calendar color="user_id" date_start="date_order" string="POS Report">
641 <field name="amount" />
646 <record model="ir.ui.view" id="view_report_sales_by_user_pos_month_graph">
647 <field name="name">report.sales.by.user.pos.month.graph</field>
648 <field name="model">report.sales.by.user.pos.month</field>
649 <field name="type">graph</field>
650 <field eval="2" name="priority"/>
651 <field name="arch" type="xml">
652 <graph type="bar" string="Sales by User">
653 <field name="user_id" />
654 <field name="amount"/>
660 <record model="ir.actions.act_window" id="action_report_sales_by_user_pos_month">
661 <field name="name">Sales by User Monthly</field>
662 <field name="res_model">report.sales.by.user.pos.month</field>
663 <field name="view_type">form</field>
664 <field name="view_mode">tree,calendar,form,graph</field>
665 <field name="domain">[('date_order','like',time.strftime('%Y-%m'))]</field>
668 <!-- Sales by margin -->
670 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_form">
671 <field name="name">report.sales.by.margin.pos.form</field>
672 <field name="model">report.sales.by.margin.pos</field>
673 <field name="type">form</field>
674 <field name="arch" type="xml">
675 <form string="POS " version="7.0">
677 <field name="user_id"/>
678 <field name="product_name"/>
679 <field name="date_order" widget="date"/>
681 <field name="net_margin_per_qty"/>
682 <field name="total"/>
689 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_tree">
690 <field name="name">report.sales.by.margin.pos.tree</field>
691 <field name="model">report.sales.by.margin.pos</field>
692 <field name="type">tree</field>
693 <field name="arch" type="xml">
695 <field name="user_id"/>
696 <field name="product_name"/>
697 <field name="date_order" widget="date"/>
699 <field name="net_margin_per_qty"/>
700 <field name="total"/>
705 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_calendar">
706 <field name="name">report.sales.by.margin.pos.calendar</field>
707 <field name="model">report.sales.by.margin.pos</field>
708 <field name="type">calendar</field>
709 <field eval="2" name="priority"/>
710 <field name="arch" type="xml">
711 <calendar color="user_id" date_start="date_order" string="Sales by User Margin">
712 <field name="product_name"/>
713 <field name="total" />
718 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_graph">
719 <field name="name">report.sales.by.margin.pos.graph</field>
720 <field name="model">report.sales.by.margin.pos</field>
721 <field name="type">graph</field>
722 <field eval="2" name="priority"/>
723 <field name="arch" type="xml">
724 <graph type="bar" string="Sales by User Margin" orientation="horizontal">
725 <field name="product_name" />
726 <field name="total" operator="+"/>
731 <record model="ir.actions.act_window" id="action_report_sales_by_margin_pos_today">
732 <field name="name">Sales by User Daily margin</field>
733 <field name="res_model">report.sales.by.margin.pos</field>
734 <field name="view_type">form</field>
735 <field name="view_mode">tree,calendar,form,graph</field>
736 <field name="domain">[('date_order','=',time.strftime('%Y-%m-%d'))]</field>
739 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_form">
740 <field name="name">report.sales.by.margin.pos.month.form</field>
741 <field name="model">report.sales.by.margin.pos.month</field>
742 <field name="type">form</field>
743 <field name="arch" type="xml">
744 <form string="POS " version="7.0">
746 <field name="user_id"/>
747 <field name="product_name"/>
748 <field name="date_order" widget="date"/>
750 <field name="net_margin_per_qty"/>
751 <field name="total"/>
758 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_tree">
759 <field name="name">report.sales.by.margin.pos.month.tree</field>
760 <field name="model">report.sales.by.margin.pos.month</field>
761 <field name="type">tree</field>
762 <field name="arch" type="xml">
764 <field name="user_id"/>
765 <field name="product_name"/>
766 <field name="date_order" widget="date"/>
768 <field name="net_margin_per_qty"/>
769 <field name="total"/>
774 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_calendar">
775 <field name="name">report.sales.by.margin.pos.month.calendar</field>
776 <field name="model">report.sales.by.margin.pos.month</field>
777 <field name="type">calendar</field>
778 <field eval="2" name="priority"/>
779 <field name="arch" type="xml">
780 <calendar color="user_id" date_start="date_order" string="Sales by User Margin">
781 <field name="product_name"/>
782 <field name="total" />
787 <record model="ir.ui.view" id="view_report_sales_by_margin_pos_month_graph">
788 <field name="name">report.sales.by.margin.pos.month.graph</field>
789 <field name="model">report.sales.by.margin.pos.month</field>
790 <field name="type">graph</field>
791 <field eval="2" name="priority"/>
792 <field name="arch" type="xml">
793 <graph type="bar" string="Sales by User Margin" orientation="horizontal">
794 <field name="product_name" />
795 <field name="total" operator="+"/>
800 <record model="ir.actions.act_window" id="action_report_sales_by_margin_pos_month">
801 <field name="name">Sales by User Monthly margin</field>
802 <field name="res_model">report.sales.by.margin.pos.month</field>
803 <field name="view_type">form</field>
804 <field name="view_mode">tree,calendar,form,graph</field>
805 <field name="domain">[('date_order','like',time.strftime('%Y-%m'))]</field>
808 <record id="product_normal_form_pos_view" model="ir.ui.view">
809 <field name="name">product.normal.pos.form.inherit</field>
810 <field name="model">product.product</field>
811 <field name="type">form</field>
812 <field name="inherit_id" ref="product.product_normal_form_view"/>
813 <field name="arch" type="xml">
814 <group name="status" position="after">
815 <group name="pos" string="Point of Sale">
816 <field name="pos_categ_id"/>
817 <field name="to_weight" />
820 <group name="misc" position="after">
821 <group name="pos" colspan="2" col="2">
822 <separator string="Point of Sale" colspan="2"/>
823 <field name="income_pdt"/>
824 <field name="expense_pdt"/>
827 <field name="ean13" position="after">
828 <button name="edit_ean" type="object" string="Edit" />
833 <!-- Categories tree view -->
834 <record id="pos_category_form_view" model="ir.ui.view">
835 <field name="name">pos.category.form</field>
836 <field name="model">pos.category</field>
837 <field name="type">form</field>
838 <field name="arch" type="xml">
839 <form string="Product PoS Categories" version="7.0">
841 <field name="image_medium" widget='image' class="oe_avatar oe_right"/>
842 <div class="oe_left">
845 <field name="parent_id"/>
846 <field name="sequence"/>
853 <record id="pos_category_tree_view" model="ir.ui.view">
854 <field name="name">pos.category.tree</field>
855 <field name="model">pos.category</field>
856 <field name="type">tree</field>
857 <field name="field_parent" eval="False"/>
858 <field name="arch" type="xml">
859 <tree string="Product PoS Categories">
860 <field name="sequence" invisible="1"/>
861 <field name="complete_name"/>
865 <record id="pos_category_action" model="ir.actions.act_window">
866 <field name="name">Product Categories</field>
867 <field name="type">ir.actions.act_window</field>
868 <field name="res_model">pos.category</field>
869 <field name="view_type">form</field>
870 <field name="view_mode">tree,form</field>
871 <field name="view_id" eval="False"/>
872 <field name="help" type="html">
873 <p class="oe_view_nocontent_create">
874 Click to define a new category.
876 Categories are used to browse your products through the
877 touchscreen interface.
879 If you put a photo on the category, the layout of the
880 touchscreen interface will automatically. We suggest not to put
881 a photo on categories for small (1024x768) screens.
885 <menuitem action="pos_category_action" id="menu_pos_category" parent="menu_point_of_sale_product" sequence="0" />
888 <menuitem name="Configuration" parent="menu_point_root"
889 id="menu_point_config_product" sequence="25" groups="group_pos_manager"/>
891 <record id="action_account_journal_form" model="ir.actions.act_window">
892 <field name="name">Payment Methods</field>
893 <field name="res_model">account.journal</field>
894 <field name="view_type">form</field>
895 <field name="view_mode">tree,form</field>
896 <field name="context" eval="{'default_journal_user': 1, 'default_type': 'cash'}"/>
897 <field name="domain">[('journal_user','=', 1)]</field>
898 <field name="help" type="html">
899 <p class="oe_view_nocontent_create">
900 Click to add a payment method.
902 Payment methods are defined by accounting journals having the
903 field <i>PoS Payment Method</i> checked. In order to be useable
904 from the touchscreen interface, you must set the payment method
905 on the <i>Point of Sale</i> configuration.
910 <menuitem action="action_account_journal_form"
911 id="menu_action_account_journal_form_open"
912 parent="menu_point_config_product"
915 <record model="ir.ui.view" id="view_pos_order_tree_all_sales_lines">
916 <field name="name">POS Sales Lines</field>
917 <field name="model">pos.order.line</field>
918 <field name="type">tree</field>
919 <field name="arch" type="xml">
920 <tree string="POS Orders lines">
921 <field name="order_id" />
922 <field name="create_date" />
923 <field name="product_id" />
925 <field name="price_unit" />
929 <record model="ir.actions.act_window" id="action_pos_all_sales_lines">
930 <field name="name">All sales lines</field>
931 <field name="type">ir.actions.act_window</field>
932 <field name="res_model">pos.order.line</field>
933 <field name="view_type">form</field>
934 <field name="view_id" ref="view_pos_order_tree_all_sales_lines" />
937 <!-- Miscellaneous Operations/Reporting -->
938 <menuitem name="Point of Sale" parent="base.menu_reporting" id="menu_point_rep" sequence="50" groups="group_pos_manager"/>
941 <record model="ir.actions.act_window" id="action_pos_invoice">
942 <field name="name">Invoices</field>
943 <field name="type">ir.actions.act_window</field>
944 <field name="res_model">account.invoice</field>
945 <field name="view_type">form</field>
946 <field name="view_mode">tree,form</field>
947 <field name="domain">[('origin','like','POS')]</field>
950 <menuitem icon="STOCK_PRINT" action="action_report_pos_details"
951 id="menu_pos_details" parent="menu_point_rep" sequence="6" />
953 <record model="ir.actions.client" id="action_pos_pos">
954 <field name="name">Start Point of Sale</field>
955 <field name="tag">pos.ui</field>
958 <!-- Top menu item -->
959 <record model="ir.ui.view" id="view_pos_config_form">
960 <field name="name">pos.config.form.view</field>
961 <field name="model">pos.config</field>
962 <field name="type">form</field>
963 <field name="arch" type="xml">
964 <form string="Point of Sale Configuration" version="7.0">
966 <button string="Set to Active" name="set_active" type="object" states="inactive,deprecated"/>
967 <button string="Set to Inactive" name="set_inactive" type="object" states="active" />
968 <button string="Set to Deprecated" name="set_deprecate" type="object" states="active,inactive" />
969 <div class="oe_right">
970 <field name="state" widget="statusbar" statusbar_visible="active,inactive,deprecated" statusbar_colors='{"deprecated" : "red"}' nolabel="1"/>
977 <field name="shop_id" widget="selection" />
978 <field name="journal_id" widget="selection" />
979 <field name="sequence_id" readonly="1"/>
980 <field name="group_by" />
982 <separator string="Available Payment Methods" colspan="4"/>
983 <field name="journal_ids" colspan="4" nolabel="1">
984 <tree string="Journals">
985 <field name="code" />
986 <field name="name" />
987 <field name="type" />
988 <field name="opening_control" />
989 <field name="closing_control" />
992 <group string="Material Interfaces" >
994 <field name="iface_self_checkout" />
995 <field name="iface_websql" />
996 <field name="iface_led" />
997 <field name="iface_cashdrawer" />
998 <field name="iface_payment_terminal" />
1001 <field name="iface_electronic_scale" />
1002 <field name="iface_barscan" />
1003 <field name="iface_vkeyboard" />
1004 <field name="iface_print_via_proxy" />
1013 <record model="ir.ui.view" id="view_pos_config_tree">
1014 <field name="name">pos.config.tree.view</field>
1015 <field name="model">pos.config</field>
1016 <field name="type">tree</field>
1017 <field name="arch" type="xml">
1018 <tree string="Point of Sale Configuration" colors="grey:state == 'inactive'">
1019 <field name="name" />
1020 <field name="shop_id" />
1021 <field name="state" />
1026 <record model="ir.ui.view" id="view_pos_config_search">
1027 <field name="name">pos.config.search.view</field>
1028 <field name="model">pos.config</field>
1029 <field name="type">search</field>
1030 <field name="arch" type="xml">
1031 <search string="Point of Sale Config">
1032 <field name="name" />
1033 <filter string="Active" domain="[('state', '=', 'active')]" />
1034 <filter string="Inactive" domain="[('state', '=', 'inactive')]" />
1035 <field name="shop_id" />
1042 id="act_pos_config_sessions"
1044 src_model="pos.config"
1045 res_model="pos.session"
1046 domain="[('config_id', '=', active_id)]" />
1048 <record model="ir.actions.act_window" id="action_pos_config_pos">
1049 <field name="name">Point of Sales</field>
1050 <field name="type">ir.actions.act_window</field>
1051 <field name="res_model">pos.config</field>
1052 <field name="view_type">form</field>
1053 <field name="view_mode">tree,form</field>
1054 <field name="search_view_id" ref="view_pos_config_search" />
1058 parent="menu_point_config_product"
1059 action="action_pos_config_pos"
1060 id="menu_pos_config_pos"
1061 groups="group_pos_manager"/>
1064 id="act_pos_session_orders"
1066 src_model="pos.session"
1067 res_model="pos.order"
1068 context="{'search_default_session_id': active_id, 'default_session_id' : active_id }" />
1072 <record model="ir.ui.view" id="view_pos_session_form">
1073 <field name="name">pos.session.form.view</field>
1074 <field name="model">pos.session</field>
1075 <field name="type">form</field>
1076 <field name="arch" type="xml">
1077 <form string="Point of Sale Session" version="7.0">
1079 <button name="open" type="workflow" string="Validate & Open Session" states="opening_control" class="oe_highlight"/>
1080 <button name="cashbox_control" type="workflow" string="End of Session" states="opened"
1081 class="oe_highlight"/>
1082 <button name="close" type="workflow" string="Validate Closing & Post Entries" states="closing_control"
1083 class="oe_highlight"/>
1084 <button name="open_frontend_cb" type="object" string="Start Selling" states="opened"/>
1085 <div class="oe_right">
1086 <field name="state" widget="statusbar" statusbar_visible="opening_control,opened,closing_control,closed" nolabel="1"/>
1090 <div class="oe_right oe_button_box">
1091 <button name="%(action_pos_box_in)d" string="Put Money In" type="action" states="opened,closing_control"/>
1092 <button name="%(action_pos_box_out)d" string="Take Money Out" type="action" states="opened,closing_control"/>
1094 <h1 class="oe_title">
1095 Point of Sale Session:
1096 <field name="name" attrs="{'invisible': [('name','=','/')]}" class="oe_inline"/>
1098 <field name="config_id" invisible="1"/>
1099 <field name="has_opening_control" invisible="1" />
1100 <field name="has_closing_control" invisible="1" />
1103 <field name="user_id"/>
1106 <field name="start_at" attrs="{'invisible' : [('state', '=', 'opening_control')]}"/>
1107 <field name="stop_at" attrs="{'invisible' : [('state', '<>', 'closed')]}"/>
1111 <group string="Opening Cash Control">
1112 <field name="opening_details_ids" nolabel="1" colspan="2" attrs="{'readonly' : [('state', 'not in', ('opening_control',))]}">
1113 <tree string="Opening Cashbox Lines" editable="bottom">
1114 <field name="pieces" readonly="1" />
1115 <field name="number_opening" string="Opening Unit Numbers" on_change="on_change_sub_opening(pieces, number_opening)" />
1116 <field name="subtotal_opening" string="Opening Subtotal" sum="Total"/>
1120 <group string="Closing Cash Control" attrs="{'invisible': [('state', '=', 'opening_control')]}">
1121 <field name="details_ids" nolabel="1" colspan="2">
1122 <tree string="Cashbox Lines" editable="bottom">
1123 <field name="pieces" readonly="1" />
1124 <field name="number_closing"/>
1125 <field name="subtotal_closing"/>
1131 <group class="oe_subtotal_footer oe_right">
1132 <field name="cash_register_balance_start" readonly="1" string="Opening Balance" class="oe_subtotal_footer_separator"/>
1133 <field name="cash_register_total_entry_encoding" attrs="{'invisible' : [('state', '=', 'opening_control')]}" string="+ Transactions"/>
1134 <field name="cash_register_balance_end" attrs="{'invisible' : [('state', '=', 'opening_control')]}" string="= Theorical Balance"/>
1136 <div attrs="{'invisible' : [('state', '<>', 'opening_control')]}" class="oe_view_nocontent" groups="point_of_sale.group_pos_manager">
1137 <p class="oe_view_nocontent_create">
1138 You can define another list of available currencies on the
1139 <i>Cash Registers</i> tab of the <b><field name="cash_register_id" class="oe_inline"/></b>
1146 <group class="oe_subtotal_footer oe_right" attrs="{'invisible' : [('state', '=', 'opening_control')]}">
1147 <field name="cash_register_balance_end_real" class="oe_subtotal_footer_separator"/>
1148 <field name="cash_register_difference" class="oe_subtotal_footer_separator"/>
1152 <separator string="Summary by Payment Methods" attrs="{'invisible' : [('state', '=', 'opening_control')]}"/>
1153 <field name="statement_ids" attrs="{'invisible' : [('state', '=', 'opening_control')]}">
1154 <tree string="Statements">
1155 <field name="name" />
1156 <field name="journal_id" />
1157 <field name="balance_start" />
1158 <field name="total_entry_encoding" />
1159 <field name="balance_end_real" />
1160 <field name="difference" />
1161 <field name="currency" />
1162 <field name="state" />
1171 <record model="ir.ui.view" id="view_pos_session_tree">
1172 <field name="name">pos.session.tree.view</field>
1173 <field name="model">pos.session</field>
1174 <field name="type">tree</field>
1175 <field name="arch" type="xml">
1176 <tree string="Point of Sale Session">
1177 <field name="config_id" />
1178 <field name="name" />
1179 <field name="user_id" />
1180 <field name="start_at" />
1181 <field name="stop_at" />
1182 <field name="state" />
1187 <record model="ir.ui.view" id="view_pos_session_search">
1188 <field name="name">pos.session.search.view</field>
1189 <field name="model">pos.session</field>
1190 <field name="type">search</field>
1191 <field name="arch" type="xml">
1192 <search string="Point of Sale Session">
1193 <field name="name" />
1194 <filter string="Open" domain="[('state', '=', 'opened')]" />
1196 <filter string="Today" domain="[('start_at', '>=', time.strftime('%%Y-%%m-%%d 00:00:00'))]" />
1197 <field name="config_id" />
1198 <field name="user_id" />
1199 <group expand="0" string="Group By...">
1200 <filter string="User" icon="terp-personal" domain="[]" context="{'group_by' : 'user_id'}" />
1201 <filter string="Point of Sales" domain="[]" context="{'group_by': 'user_id'}" />
1208 <record model="ir.actions.act_window" id="action_pos_session">
1209 <field name="name">All Sessions</field>
1210 <field name="type">ir.actions.act_window</field>
1211 <field name="res_model">pos.session</field>
1212 <field name="view_type">form</field>
1213 <field name="view_mode">tree,form</field>
1214 <field name="search_view_id" ref="view_pos_session_search" />
1218 parent="menu_point_of_sale"
1219 action="action_pos_session"
1220 id="menu_pos_session_all"
1222 groups="group_pos_manager"/>
1224 <record id="view_pos_order_filter" model="ir.ui.view">
1225 <field name="name">pos.order.list.select</field>
1226 <field name="model">pos.order</field>
1227 <field name="type">search</field>
1228 <field name="arch" type="xml">
1229 <search string="Search Sales Order">
1230 <field name="name"/>
1231 <field name="date_order"/>
1232 <filter icon="terp-document-new" string="New" domain="[('state','=','draft')]"/>
1233 <filter icon="gtk-apply" string="Done" domain="[('state','in',('paid','invoiced','done'))]"/>
1234 <filter icon="terp-check" string="Invoiced" domain="[('state','=','invoiced')]"/>
1235 <filter icon="gtk-convert" string="Posted" domain="[('state','=','done')]"/>
1236 <field name="user_id"/>
1237 <field name="session_id"/>
1238 <group expand="0" string="Group By..." groups="base.group_extended">
1239 <filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
1240 <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
1241 <filter string="Session" icon="terp-personal" domain="[]" context="{'group_by':'session_id'}"/>
1242 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
1243 <filter string="Order Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_order'}"/>
1249 <menuitem action="action_pos_session_opening"
1250 parent="menu_point_of_sale"
1251 id="menu_pos_session_opening" sequence="0"/>
1253 <record model="ir.ui.view" id="pos_ean13_generator">
1254 <field name="name">pos.ean_wizard</field>
1255 <field name="model">pos.ean_wizard</field>
1256 <field name="type">form</field>
1257 <field name="arch" type="xml">
1258 <form string="Ean13 Generator" version="7.0">
1259 <field name="ean13_pattern"/>
1261 <button name="sanitize_ean13" type="object" string="Apply"/>