From 896363b92c007fb4ab70b2eb72dd293fb4e6a319 Mon Sep 17 00:00:00 2001 From: mcsi-odoo Date: Thu, 17 Jul 2025 13:49:43 +0000 Subject: [PATCH] [IMP] spreadsheet: basics of creating and managing spreadsheets task-4943625 X-original-commit: 9f6207ce429e3d1ec6f0b70f08c69fe9a17c7dfc --- .../applications/productivity/spreadsheet.rst | 181 +++++++++++++++++- .../spreadsheet/command-palette.png | Bin 0 -> 9121 bytes .../productivity/spreadsheet/insert.rst | 10 +- .../spreadsheet/locale-difference.png | Bin 0 -> 9645 bytes .../productivity/spreadsheet/templates.rst | 9 +- 5 files changed, 185 insertions(+), 15 deletions(-) create mode 100644 content/applications/productivity/spreadsheet/command-palette.png create mode 100644 content/applications/productivity/spreadsheet/locale-difference.png diff --git a/content/applications/productivity/spreadsheet.rst b/content/applications/productivity/spreadsheet.rst index ca8ddc14bf..d06ec7b030 100644 --- a/content/applications/productivity/spreadsheet.rst +++ b/content/applications/productivity/spreadsheet.rst @@ -1,5 +1,4 @@ :show-content: -:hide-page-toc: =========== Spreadsheet @@ -18,10 +17,11 @@ Spreadsheet similar functionality to other spreadsheet solutions with the added benefit of integrating directly with your Odoo database. -With **Odoo Spreadsheet**, you can: +With Odoo Spreadsheet, you can: -- create spreadsheets or upload existing `.xlsx` or `.csv` files and edit them -- create :doc:`templates ` +- :ref:`create spreadsheets ` or :ref:`upload files + ` and open them with Odoo Spreadsheet +- :doc:`create templates ` - :doc:`use functions, including Odoo-specific functions ` - :doc:`insert and link to Odoo data ` - :doc:`create and use dynamic pivot tables ` @@ -29,3 +29,176 @@ With **Odoo Spreadsheet**, you can: ` - visualize data using charts and formatting - share files internally and externally + +The Spreadsheet module is part of **Odoo Documents**. + +.. tip:: + Within a spreadsheet, opening the command palette, using the :doc:`keyboard shortcut + <../../applications/essentials/keyboard_shortcuts>` `Ctrl` + `K` or `Command` + `K`, allows you + to browse and execute spreadsheet commands via the keyboard, without having to navigate menus. + +.. note:: + Odoo spreadsheets serve as the foundation for the dashboards available in **Odoo Dashboards**. On + a dashboard, charts and data tables are used to display dynamic Odoo data and provide an overview + of key business metrics. + + Standard, pre-configured dashboards can be customized by editing the dashboard's underlying + spreadsheet via Dashboards. Custom dashboards can also be created from scratch, starting + from an Odoo spreadsheet; any subsequent modifications are performed via Dashboards. + +.. _spreadsheet/create-new: + +Create a new spreadsheet +======================== + +To create a new spreadsheet: + +#. Open Odoo Documents and navigate to the section or folder in which the spreadsheet should be + created. +#. Click :guilabel:`New` and select :guilabel:`Spreadsheet`. + + .. tip:: + Alternatively, from the :icon:`fa-folder-o` :guilabel:`All` folder, click :guilabel:`New` and + select :guilabel:`Spreadsheet`, then select in which :guilabel:`Folder` the + spreadsheet should be created. + +#. Click :guilabel:`Blank spreadsheet` or, to create a new spreadsheet using an existing + :doc:`template `, select the relevant template. +#. Click :guilabel:`Create`. +#. Click on `Untitled spreadsheet` at the top of the screen to edit the name of the spreadsheet. + +.. tip:: + It is also possible to create a new spreadsheet by: + + - clicking :menuselection:`File -->` :icon:`os-clear-and-reload` :menuselection:`New` from the + menu bar of an open spreadsheet; or + - :doc:`inserting a list, pivot table, or chart from another Odoo app ` into + a new spreadsheet directly from the app in question. + + In these cases, the new spreadsheet is saved in Odoo Documents in the :icon:`fa-hdd-o` + :guilabel:`My Drive` personal folder. + +.. _spreadsheet/upload-files: + +Upload files +============ + +Files in `.xlsx` or `.csv` format can be uploaded into Odoo Documents and opened with Odoo +Spreadsheet. To do so: + +#. Open Odoo Documents and navigate to the section or folder where the spreadsheet should be saved. +#. Click :guilabel:`New` and select :guilabel:`Upload`. +#. Select the relevant `.xlsx` or `.csv` file and click :guilabel:`Open`. +#. Click on the uploaded file. +#. By default, the original file is deleted when it is opened with Odoo Spreadsheet. To preserve + the original file in the same folder in Odoo Documents, disable :guilabel:`Send source file to + trash`. +#. Click :guilabel:`Open with Odoo Spreadsheet`. + +The file can now be fully edited in Odoo Spreadsheet. + +.. _spreadsheet/manage-spreadsheets: + +Manage spreadsheets +=================== + +Users with :guilabel:`Editor` rights to a specific spreadsheet have various options for managing the +spreadsheet via the :guilabel:`File` menu: + +- :icon:`os-copy-file` :guilabel:`Make a copy`: creates a duplicate of the current spreadsheet with + the same :ref:`regional settings ` (or locale). +- :icon:`os-save` :guilabel:`Save as template`: allows the current spreadsheet to be used as a + :doc:`template ` for future spreadsheets. +- :icon:`os-download` :guilabel:`Download`: downloads the spreadsheet in `.xlsx` format. + + .. important:: + When you download a spreadsheet in `.xlsx` format, any spreadsheet formulas that retrieve Odoo + data from your database, e.g., via an :doc:`inserted list ` or via other + :doc:`Odoo-specific functions `, are converted to the values they would + have returned at the moment the spreadsheet was downloaded. + + .. tip:: + Users with :guilabel:`Viewer` rights can also download a spreadsheet in `.xlsx` format. + +- :icon:`os-version-history` :guilabel:`See version history`: provides read-only :ref:`access to + previous versions ` of the current spreadsheet, + which can be named and restored if needed. +- :icon:`fa-print` :guilabel:`Print`: prints a copy of the spreadsheet on a connected printer. +- :icon:`os-cog` :guilabel:`Settings`: allows you to view and change the :ref:`locale + ` of the current spreadsheet. +- :icon:`os-add-to-dashboard` :guilabel:`Add to dashboard`: allows you to turn the current + spreadsheet into a new dashboard that is accessible via Odoo Dashboards. The following fields must + be completed: :guilabel:`Dashboard Name`, the :guilabel:`Dashboard Section` in which the new + dashboard will be saved, and :guilabel:`Access Groups` to determine which user groups can access + the dashboard. + + .. note:: + When a spreadsheet is converted into a dashboard, the original spreadsheet is deleted from Odoo + Spreadsheet. However, it is still possible to edit the dashboards's underlying spreadsheet via + Odoo Dashboards. + +.. _spreadsheet/manage-spreadsheets/version-history: + +Version history +--------------- + +Odoo Spreadsheet automatically saves versions of spreadsheets as changes are made, allowing users +with :guilabel:`Editor` rights to browse and restore previous versions. + +To access the version history of a spreadsheet, click :menuselection:`File -->` +:icon:`os-version-history` :menuselection:`See version history` from the menu bar. Saved versions +appear in a panel on the right of the spreadsheet. The name of the user who made the change is +shown, as well as the date and time of the change. + +The following actions are possible: + +- **View an earlier version** in read-only format by clicking on the relevant version. +- **Restore an earlier version** by clicking :icon:`fa-ellipsis-v` :guilabel:`(vertical ellipsis)` + then :guilabel:`Restore this version`. +- **Copy an earlier version** by clicking :icon:`fa-ellipsis-v` :guilabel:`(vertical ellipsis)` then + :menuselection:`Make a copy`. A copy of the version opens as a new spreadsheet. +- **Create named versions** by clicking on the date and time of the relevant version and entering + the desired name. The date and time of the version are then displayed below the new name. + +.. tip:: + When viewing an earlier, read-only version of a spreadsheet, the following actions are still + possible: + + - Search the spreadsheet by clicking :menuselection:`Edit -->` :icon:`fa-search` + :menuselection:`Find and replace` or using the shortcut `Ctrl` + `H`. + - Copy an individual cell or selected area by clicking :menuselection:`Edit -->` + :icon:`fa-clipboard` :menuselection:`Copy` or using the shortcut `Ctrl` + `C`. + +.. _spreadsheet/manage-spreadsheets/regional-settings: + +Regional settings +----------------- + +To ensure data is displayed consistently for all users, the regional settings (or locale) of a +spreadsheet, are managed at spreadsheet level. This locale affects the following settings and +formats: + +- thousand and decimal separators +- date and time formats +- first day of the week + +By default, a new spreadsheet inherits the regional settings of the user who created it. For +example, any spreadsheets created by a user whose language is set to :guilabel:`French (BE) / +Français (BE)` will follow Belgian French conventions. + +A spreadsheet's locale can be viewed and changed at any time by a user with :guilabel:`Editor` +rights. To view the locale of a spreadsheet, click :menuselection:`File -->` :icon:`os-cog` +:menuselection:`Settings` from the menu bar. The :guilabel:`Spreadsheet settings` panel opens on the +right of the spreadsheet. To change the locale, select the appropriate locale from the dropdown. + +.. tip:: + When you open a spreadsheet that has a different locale to that of your user profile, a blue + :icon:`fa-globe` :guilabel:`(globe)` icon appears at the top right of the spreadsheet. Hovering + over the icon reveals a warning message that indicates the spreadsheet locale and highlights + formats that differ. + + .. image:: spreadsheet/locale-difference.png + :alt: Warning about difference between user and spreadsheet locale + + If no :icon:`fa-globe` :guilabel:`(globe)` icon is shown, this means the spreadsheet's locale is + the same as that of your user profile. diff --git a/content/applications/productivity/spreadsheet/command-palette.png b/content/applications/productivity/spreadsheet/command-palette.png new file mode 100644 index 0000000000000000000000000000000000000000..78ba14248191fd0614a17da00731960a3ab148c3 GIT binary patch literal 9121 zcmbVybzD^K*7lenNQi_;%!3FbDLIsbA|)v}bO};3bThP%lr-Xiw9*}tLyZz59mCMW zNOyO?o98^=cfRv}=lz}E@BIVVao_jad+mFzbzRru!z)#JGLriwAP|V`rGktG2y`_P zIPN083jB6@TX_Whx#ggs>kI;sw_N^QL2;2YfIxqMUdlX&c_gplkp?i$3!+VDOA`wn zqG%suYKYdAD|Zh94V>FG$_ETmI}G%m6cFB;Yw6{o<|Z@d8?D!~)BpGq^2dYp!ar@A z$;mEhca*7Gj4cfxstDOXMEEc`Su8$R%$tY)&MrD6`+ zE7+yh`9zAR`LyEp4psm-Id|Q8q5f%|U;ac&?Ka#NTojpKu=h!m{?@Id>7bi;qe_Xv zN>x*w1Ew9Plt@<-H`V7z^AsJ~@UFt-1~26Jt=rJ2w-dlfbw$&6$Y-TFVo8+JgSdn( zI7!+QV}|0dTyKA#p2`}1@-F($$uWX&*~EzHbtQtOiDT&49?|ODxKWoRU=sP6Uutp8`B zv`YQLZ;Ev*t2oCYs3ymtjCkijX%^ZrO$16V136Knkq6_BsW48l&B`yJ34589tK5xr zT2O5XIa0@&5elelPV}5V?Nw?9lyWmNS%)EHvdpPo^wP4<2Xo}Fw3yaPKm1rm%p&tz zn~Ro6VwUrBUrtmgr8IUoBg-i< zJ0c>2OpgY*B?&x0dfj@s>}S6+2nh7u`6WYN6z%tzA>dwkI;j<-<~0!L33X)t6%gn% zsXPw2tbDMTt9Nk=IC>(}O!J!<4jlbN=z!$kTn-K8O>u;g0V^5Q6y64b{L##3ca%TK zC}S&NoWd?ofw6thI8llZO+(W~Ei5cT5Wtmeetr=VLBR};(D&9I!1?DT`-4lnAVHQ( zyZ6Y{FBi1>YpmSNy;}b&F5bsVjR_*0h>)+ON065)bs5oI(tlpNZAc6Py`YKzbXIF_ zspn~-t1C7fBJstTP;HbpJ-zzo`$tiYgz#)Q+Q9DngRyL7SZZt%!6|Lv+jdy|w4$Oc zqVl*Be%IEv)0=OPJ*OcxYN%AJIU$Ey{9vhqUfY{V3*DT@&?PNfC9O z)UdiEY)To{N~NcBFY_h{bg0cyl6(9+mPSj9cBS#6X|hLdT!$}?`*3lm1apDw|H1q4 zSBc=t)RxCpXqrn48u0;EYk9#R`rxfR8N)q#J3Bjz+>^b@=W9UpM~(iy z%ung*A8S1wH;kaH!4w(=xJPQn9Ns$Iv`U5Cfr8m;>;W9q9pGVGO-__nT+?^|$t&j# zyIe8tvjNcrckqLNQk}w9(s@d0)0tv?UE1r{`s1x*oI(%#a+0*m>#$@_Y$E(y$11d8 z=C-!&>DHi8i(5^3o^O)#dP7 z2_|=UIyy`F&~yQTjWkK0ANcOTHo<`gJ$-%m?cG4$p*Yqcis>DXG4ND7)^C1+Zhwuz z%#>R}K^f|>*pjS^9kJOzD>OhU?oEgMzzJ9KYf~{(Q{Nyu($&{z$16Pbf@T*~KT7IG zsHD+atY($5(kNz~+rVI2DHw;*X1p-q513KR$HYk^DJzh_Wq5AAz&B&7ay~d8S3v=t zy9I0|9eq{;s$Mc>qGF^>bC_}Sw2;wp=w&w4<)&qM$hH@mQl#Rc1C|b{jz2k8kyy8| zI6B#*CgG_#TArUz20ohO%Y@)ME|!316E82cb=#*-8pvxq3Z?-9p*rWhQIyfGcir$7 z3%=I#yvEMj_eXQK`r7X|1$BwsGwVL~d-zuZ8@Lj@Sp~@xrN18I~&~fSGV4^IdtL25l+I$% z_2o*(w{j!nkeH3v zs~73+8q91|op3TSPbb0uDH+!4vAd(BWl+PX43+MQk+mgbO-+(dzPP`6w$UuF zcILR;TRrKGdeDMv&9hhdQXG|l&eO;`o|zSskVvAFC!Z=Er8Aw@yZ745WwNQ@enfU4 zxsZyr(EU)^B|VN%1Tyx|rgYNy=~Hj7T{5yv;>wFYuv(#F#t@~n4(tW1tU4m1wq5I! z+>Vv``{RQ8p#r@YsXkH%N&gcqD%g>+Ue3-u0R&}ZI`~qu~BF_JOihRE+fHE~kz5Kn7{;gXq zt!(D=^A@(n0qGn{UuD(RKe*APWG_vB)OaL+LMxJ2m_P3%)*MXkVL+s$M7nlIO7`jT z^*6S*FNq%m*^@f)t~3I%vb@qdq@`ucTX)B?AyZf|`>m~QLX!3ujXZ{w_e3CnImrpb zNxzMvjUhYF6+BysT8b3{kq+ZLV3v&e{7IVlWp526*YERl66=dxUQXVIG}O%E8+l?> z(#h}r6lHgarL@AUFZMu6A-FSbA8b4pf@tUAj8g5`vww2au6SyMia_T`WXs3HcT0C{xDb;fq6gC4teu;ME5 z)cIht`T09v_Md+)FY7TdSW7Fosh;Nv(xuDY1}2V|Z*Z{8qT<_@AXVBwK%k2Uu|H)K zk`nDk8#iXm3o3ZD;%L)kd-)#I*d7y@LtkxlA&YhjmZLM4|7@DhWT+-)0qW52KQN_@ zJ{3_p%J;pdcheSnj79kQtG-ctde%6JB~QH|%A8P?a$2p>$Py3``1S;1@74vxTC#-S zk>Z4Kgk1B&j)ij4U{I6v@nNU=_9y+Nyy|u0!1=dwWLV}TXk=1>^DBRQ3k$6Y+=`G& zQc}Y9k)MS6)bcd7u&IN$>A+M*4l&D*=e~BuJsIgisbcO+2=9+_8ICR$V3ACz_;I_P ziDP=~x9W0wDK|5liOScOy!S}2)6!Z*M!E%1CT5!ppxtnWUtb~UZtOB#0i~)n2k(NR znHV6oZaim6>fT?O%P_pH%|Six#+1&nyf%uJKtJRZ7f;NF$0$^|t_-P8USdAXuS8?t zap&KM3|RK=B;m@tZV=~rWd??%pp#4Z^~Ic&;QKlccAvq0-}Uz;2=gC0cKDIpLwI~{ zBn+UmjDLgDUcfHF;QjRb!03L;OV}75lncO|H$pOhO>xW=pjW{{|yr`zppST zcYkRa{#_h6`J$@>BKqg^{F|x&Vog+S{gMu@JulL#HsSgQD*pTJ{x76lRJ>gGodIur zhZ(i3<8^PS3RaT2w~q~Q;dr3S8M?M=d;a#h7Cmf$T;Rt7M+k7ZFmJD#9uyns8)hbt40e)Ay&emy9%z*)*sn3mx0SDAShU#@y zbc*_`R}ZNZ4=5;fCH-i_T0e487Yx}b*Cw!2Y3{Bs?W`p7RYnks@Gipqx>*`zp|`#K z&TV+(U+ZgQOje3#2X~2X$VTp0owygW1~5t>&qvyK0;0{8=pq^Kk6PvMmwhn#`p#fI zmM~VMJ+GW1>DJNG@4hj&I_4+zbjBzlx2d&#Ywi|bB=~8)`a&vlb+WdW_G zccirnkJ$vd7RndhcfgVpRV&ebO{SBDd9JS0@8#8c(+)f#_7s8Ac}ybd_I(AhZB)|r zk_HTG>X%8ej=sTT@-+_0$MtAlaXNnvtduzrYsu?V=lQ}RI;}jTp}0A(Jbs$WZgph$ zniCL2;<}dH{zQlSoBK`_6lB~yTxyDq!k)8l)R9>zl*7OwM`(J5Pkz32&nfaKXCp4~ z`cYuub&~6+-Q)W`Ny3^Z2m>h*c!sxTG)&A>b6d3(ndzzkYgsm9zOr7`c&K263Yg`_)`j)tp0l6riwY3 zT3`*5kqfv1(1~(qFs1aoU#T(%qnPD6W|-VSISv^iw6q+8hjiKV`=GR8Y)bJ(iRT@M z&n}EE%#?x6>cffR6cG`DK&p$2d%C*1u-I~Aj4z|AAbKKCy?ee?6Cupf(%!#5(a%&z z!8rcSXQP*)dShhw{r+#y(Sg7rEonnPJij|vrR`qbWAfl4t%AxZq$DfB2!8;Eig5_k zdqGP4L`D;S)YKfy!QpW2?d?b;Qe9oWs;VkNoME*Q!5c3KM3h(cMd2$B z!1peD+g~^oGx`IrA1$4ijjm=hY$GMhWCm7058Gu{0rqY%l3UKjD|sI5>TdSaQILd= zIhuh$9(Hqcb4yNoIp4ksNYo|p-Qe%)*2}9FoE5mynjWgu0pqMhp#st9r5g3-M!m{) zUpG62XmEVznyLBH)cSynKA+k!;929k7)9c;CyB=zTELu|Q$uKJo01b0t96%Ai2PVNFO#=&o8=SO^Xdh9HELVGHv# zb|bX~`L#jmxmy{*@^S%G(oh4@;NAr$Q76R3)a%LA;@9lqb|U#X%8Wiz5*rN^QtpmU zpT%a(4PjiU{LdrSKoMPYl)%^9maIEM?4#BgF!nw_40so2C?F*OCDF%#Ag^GfRM8R-N%mni^Ips!h=4B`~4SzisB$;i=`a z0gz|E3*P#Fg@u2~_y4A3{ihP~KTe6r@cNYOH16*TJb>iRsgGBMNkLF9Imsg4w-vbb z>@A|QmQ3H|3M25`f7i;NF&$!M_S$ucRPvHJScY?tibwi#Bm_aotrCqM|~!GJlmA5imH- zVjPdhCy6|`EdJv9R#v&dx6F_O@IZ8QbaslEN)llD%L^bN9>30RX>FaGogKvCfZc}l z^xR(=j_S66tcCwoyFlc@f^WY2U%7Tuvh2~nc}78HnEm88!L70G9Q^XY+@VtZj6^y! zu=>yC`dp~nYF9X9GPc7kAbQ8|XI#9tByL_v#eSr;p*XwvZ9Y&C-{g{`ub!qHDV3M+ z?CS4t;H`Lt4t8CvcRoMPTLRK>NJtPv&-6@eT#3#JZkr8|99$yGC-o$)USXE7>{Up4 zz*P8vI>b6Km?(-#(BNQjMCZv90q-|v9!W&uA3hxHteM!JRok1sF2Hd$o;x;|aPjc) zj2UqO^WM7-UiFCQ)p~cO!Sw>5#!G^9kJJ*d6*&f9bs8*Y2A4MKPdg^Seq)8O{KWmQ zaPciYCl8&pY(6pZ5ufsH%f#%Y#@*7~*;qA9!V|~&6?O>i zu6Yt2Y%P!;O1Lw7&+NrBxYkiSSL#Db_#3e$j;9x@)4ctE{drbV5e|LsE9)i#htnId7Jt|I zJu`!^g#b{rZ^}b5)xS4~qvMHR@r(G@RAxJBS-4Olt<%%<<-N8d-xUYZWZAHJIX>N< z1*zk%sktdVL&KRxD|^e6>bIU;TuNYY$;z;Oc6R24<>U$lnD%0``KCw`)BRP#BI{)u zxqEN^n*iY3fe8I9^Er$8Y;{(m5~Fg*nQW%vVnTg_lY|uJ73Pr&R(mEkv0=Y1X0pLM zJ^dyiQm$e9`u+gKioh_agu|xHc6Y_>Y(+;0=b94V?uyspFF2j{BZ+a|^YaF3#ko;u z{xjpn@pb#VAkgnLAjs7c1lILToe+xREVC)@lZ+A;hg(uTK3j9kMVPgojt<-g^3ja1 zx+7f1!@)Wz<>)7u^i)Qm3vc{RcW4%XT9T?)4H~`oA_)h>gG1KF_xZg+vN0i>&;Ux2 zFdF8ew!y)N^{#cm3oe?$TwH`yun%GugN=RpUHH34>XDWj+eLdAZ|lD*#`$9)74D^2 z_NLmteG4>9rZx)fbiJD*u3Y?<=mAzZU%SVI12zFgn4%u~7?7Pel?A$JeizNo&wC%w z^1jdpa^f3>aA-b&%|ZX5GXIOZAnaY18{G@}J2_YC;e(1C{u0gq*0}#JMgJ^rm)Tw@ zx^oUtuK}GA*d*}8wi)``hrng4?=xEf)sR*HPkaXW5Em6D`UXuAK(?J|9dV|6JD%ll zT)kTF!uHiL2-qNtuTto6ClqOn7t02D%5ubF$a#%~+|xXf9JuFRuRa2?JeKttyI`u= znOY232EG3+iSEQE@h_Zt>7tK$ETin`NV@Ah(bdSV%p`cF>-4*`=3Ryi_WDu2`raIH zV*$Zqb8$)28p2Gd9?cHZOmYXd{dYZ#MMJU+Far zA=}=-wT@{Fr)w1y!dTppoN7(hBC9!k08N^$HUWu1aKx<+<-M zPn&A$1+sa+T)rBz{8*c#QNL~pVfsxm>pnI8{`u*sf!$2LRbpfW2D(!jzsCS9e2WFZ z^%4h6XNPAOi~FWFUGWN;nmFOHI5a8rrAj9d!;KBzlPA3llc{#c?`LP9dhAGnyVFjN zGq=>$3eB2_3^8ZE{@oT{UbPMUJ_BDc;OV=7m>pYXLx@j_Eg7W!ArMW3ZVzh_Y`Q}#nLHW+C6H=Qm3X-ixLO~|!vf7pCs?V1^(mv%t z%#w6oz0j+qeQ>(bHl!*JV2QBXem4$7H8Gj^_EYX-d_svzBcr=d=f021NoJO%mKIJ( z@2t2mpFN-+vJvt2Q7;`W3h3$~_Ut9d0fN-i)Kqv}Qa*;w3BOpXGv|uu%PT6lm=8AI zlaKDCN%P)1Ybj%W6cL3`VKZTQCslm9k!UXkpi%T{f$*N`hw}m;hg=wz{rnYjqPu&# z(Wp0u>wHhS-C8Zx+QO#lyVTmcL-5ow`1a(OG)qI47(jB|K!?M7sVR!KJGOle?6dEx zyPI1>#%JsSFzsO~Y3cW8#>5m*mt7&2*@;$B0M*+K zzH)XhU&ch{pU4LQa2{Yl-QKp_crUTq?m3dy>8SW|w=!S%^>8h%>5Xw#p%JNvzwD>R z?K@~fS0}vBv=5k|CMI@O>nFXzWWFqtLZx01wGT4)?u zs;VoI2Gy$*L;=x9U~a5EEDttD^M)reo3F(nMa0}Y!`6Cb1t}+ILu-AyIMu0Di1gau zZEoug_i^M1Zsw=mv|d@h#bR1!w$Pa2cnh*_K1agS1@v0n;y(4Gi-ug7w7zNkyt3czhV5dhD680c~@|(?)v^AFr zAhj+X^cVX^-J=?{8b9{@AR@qed~{9e(5L+VXDdd%smN2k)Wq z#~VE?=m7TPlFVU_Gbzq3fJ&EZ`ZR2!~eDz#w zM^T%z97UkFnSN&Wr8S)crGayKQG6%f6lmVE2FuuuBTK)Oit{SIS@_HBJ+LW zLo1cE!gCXKf8$>G>z~3*BBFin$`{5t4?v)6@|XV$Fc^Jtg4kPj)u+Qqtb9O8a&S{^ z9)Wq1Pin*slNr~|EZ{=-*G$A&TAI59DVhf2eZC+7f(ngQMKb?Gdx3SAfLo zx6$02(bN8d=Um<<{>hGoge^xp~@vCCD zt112CJHB08@emzuet~HOn1S@r*-{nPU}k0pW6%F1pkC4hX6HKm@ zDJhP+FSa;48b&BK@-sUKisM?k+joL``L@R}1Yc?%ub1IiS}hC_#DY10VTQkDkyhJ` z*B#E35VK&j!%4|^4Xa#!3`?EXZdE@8q>Aq)3&EuGi%=sgp~QyZbB|ZA%xulkW?O!e zc*Dvy^=6{NvptA5U0a(EJHX}^Nd8HF_sWLh41H=V)ocbBv~%bE7jy$XaYZ_;F&!0_ zLrIBys=K*&-aiUw>TlP)0(uqf{u|yt=LB3)ra` is created. This data source connects the spreadsheet to your Odoo database, retrieving up-to-date information every time the spreadsheet is opened, the browser -page is reloaded, or data is manually refreshed by clicking :menuselection:`Data --> Refresh all -data` from the menu bar. +page is reloaded, or data is manually refreshed by clicking :menuselection:`Data -->` +:icon:`os-refresh-data` :menuselection:`Refresh all data` from the menu bar. :ref:`Inserted lists ` and :ref:`inserted pivot tables ` use formulas with Odoo-specific :ref:`list functions @@ -162,7 +162,7 @@ To insert a list: .. note:: When inserting a list into a new spreadsheet, the spreadsheet is saved in the **Odoo - Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal workspace. + Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal folder. #. Click :guilabel:`Confirm`. @@ -386,7 +386,7 @@ To insert a pivot table: .. note:: When inserting a pivot table into a new spreadsheet, the spreadsheet is saved in the **Odoo - Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal workspace. + Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal folder. #. Click :guilabel:`Confirm`. @@ -558,7 +558,7 @@ To insert a chart from an Odoo database into an Odoo spreadsheet: .. note:: When inserting a chart into a new spreadsheet, the spreadsheet is saved in the **Odoo - Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal workspace. + Documents** app in the :icon:`fa-hdd-o` :guilabel:`My Drive` personal folder. #. Click :guilabel:`Confirm`. diff --git a/content/applications/productivity/spreadsheet/locale-difference.png b/content/applications/productivity/spreadsheet/locale-difference.png new file mode 100644 index 0000000000000000000000000000000000000000..6368d323b26f024c76107710dfa34a33de93737e GIT binary patch literal 9645 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 literal 0 HcmV?d00001 diff --git a/content/applications/productivity/spreadsheet/templates.rst b/content/applications/productivity/spreadsheet/templates.rst index 0cc9999587..259a3ca58a 100644 --- a/content/applications/productivity/spreadsheet/templates.rst +++ b/content/applications/productivity/spreadsheet/templates.rst @@ -15,8 +15,9 @@ Create a template ================= Any spreadsheet can be saved as a template. Open the relevant spreadsheet or :ref:`create a new one -`. From the menu bar, click :menuselection:`File --> Save as template`. -Modify the default :guilabel:`Template Name` if needed and click :guilabel:`Confirm`. +`. From the menu bar, click :menuselection:`File -->` :icon:`os-save` +:menuselection:`Save as template`. Modify the default :guilabel:`Template Name` if needed and +click :guilabel:`Confirm`. .. important:: Once a spreadsheet is saved as a template, any further changes to the open spreadsheet are @@ -62,7 +63,3 @@ Various actions are possible: - Delete a template by ticking the checkbox next to it, clicking :icon:`fa-cog` :guilabel:`Actions`, then :guilabel:`Delete`. - -.. tip:: - Use the download button under the :guilabel:`Spreadsheet file` column to export a template in - JSON format. The file can be imported into another database.