changeset 9b8ef75eb991 in modules/stock:default
details: https://hg.tryton.org/modules/stock?cmd=changeset&node=9b8ef75eb991
description:
Support warehouse pickup
issue11574
review419411003
diffstat:
CHANGELOG | 1 +
__init__.py | 5 +-
delivery_note.fodt | 317 +++++++++++++++++++------------------
location.py | 93 +---------
location.xml | 7 -
party.py | 117 +++++++++++++-
party.xml | 6 +
shipment.py | 52 +++++-
view/location_form.xml | 4 +-
view/party_form.xml | 3 +
view/shipment_out_return_form.xml | 4 +-
view/shipment_out_return_tree.xml | 2 +-
12 files changed, 351 insertions(+), 260 deletions(-)
diffs (1050 lines):
diff -r 11631a8664bf -r 9b8ef75eb991 CHANGELOG
--- a/CHANGELOG Thu Sep 08 13:19:52 2022 +0200
+++ b/CHANGELOG Sat Sep 10 18:34:29 2022 +0200
@@ -1,3 +1,4 @@
+* Support warehouse pickup
* Allow resetting packed customer shipments
* Allow grouping by date products by location
* Ignore consumable products when inactivating locations
diff -r 11631a8664bf -r 9b8ef75eb991 __init__.py
--- a/__init__.py Thu Sep 08 13:19:52 2022 +0200
+++ b/__init__.py Sat Sep 10 18:34:29 2022 +0200
@@ -15,8 +15,6 @@
Pool.register(
location.Location,
location.WarehouseWasteLocation,
- location.Party,
- location.PartyLocation,
location.ProductsByLocationsContext,
location.ProductsByLocations,
location.LocationLeadTime,
@@ -27,6 +25,9 @@
shipment.ShipmentOutReturn,
shipment.ShipmentInternal,
shipment.AssignPartial,
+ party.Party,
+ party.PartyLocation,
+ party.PartyDeliveredToWarehouse,
party.Address,
party.ContactMechanism,
period.Period,
diff -r 11631a8664bf -r 9b8ef75eb991 delivery_note.fodt
--- a/delivery_note.fodt Thu Sep 08 13:19:52 2022 +0200
+++ b/delivery_note.fodt Sat Sep 10 18:34:29 2022 +0200
@@ -1,128 +1,137 @@
<?xml version="1.0" encoding="UTF-8"?>
-<office:document xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw" office:version="1.2"
office:mimetype="application/vnd.oasis.opendocument.text">
- <office:meta><meta:generator>LibreOffice/6.4.6.2$Linux_X86_64
LibreOffice_project/40$Build-2</meta:generator><meta:creation-date>2008-06-07T15:29:02</meta:creation-date><dc:date>2009-03-26T18:33:13</dc:date><meta:editing-cycles>1</meta:editing-cycles><meta:editing-duration>PT0S</meta:editing-duration><meta:document-statistic
meta:table-count="1" meta:image-count="0" meta:object-count="0"
meta:page-count="2" meta:paragraph-count="27" meta:word-count="75"
meta:character-count="1008"
meta:non-whitespace-character-count="960"/><meta:user-defined meta:name="Info
1"/><meta:user-defined meta:name="Info 2"/><meta:user-defined meta:name="Info
3"/><meta:user-defined meta:name="Info 4"/></office:meta>
+<office:document xmlns:officeooo="http://openoffice.org/2009/office"
xmlns:css3t="http://www.w3.org/TR/css3-text/"
xmlns:grddl="http://www.w3.org/2003/g/data-view#"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns:oooc="http://openoffice.org/2004/calc"
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns:ooow="http://openoffice.org/2004/writer"
xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:rpt="http://openoffice.org/2005/report"
xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns:ooo="http://openoffice.org/2004/office"
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
xmlns:tableooo="http://openoffice.org/2009/table"
xmlns:drawooo="http://openoffice.org/2010/draw"
xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
xmlns:dom="http://www.w3.org/2001/xml-events"
xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns:xforms="http://www.w3.org/2002/xforms" office:version="1.3"
office:mimetype="application/vnd.oasis.opendocument.text">
+ <office:meta><meta:generator>LibreOffice/7.3.3.2$Linux_X86_64
LibreOffice_project/30$Build-2</meta:generator><meta:creation-date>2008-06-07T15:29:02</meta:creation-date><dc:date>2009-03-26T18:33:13</dc:date><meta:editing-cycles>1</meta:editing-cycles><meta:editing-duration>PT0S</meta:editing-duration><meta:document-statistic
meta:table-count="1" meta:image-count="0" meta:object-count="0"
meta:page-count="2" meta:paragraph-count="28" meta:word-count="84"
meta:character-count="1078"
meta:non-whitespace-character-count="1022"/><meta:user-defined meta:name="Info
1"/><meta:user-defined meta:name="Info 2"/><meta:user-defined meta:name="Info
3"/><meta:user-defined meta:name="Info 4"/></office:meta>
<office:settings>
<config:config-item-set config:name="ooo:view-settings">
- <config:config-item config:name="ViewAreaTop"
config:type="long">28998</config:config-item>
+ <config:config-item config:name="ViewAreaTop"
config:type="long">0</config:config-item>
<config:config-item config:name="ViewAreaLeft"
config:type="long">0</config:config-item>
- <config:config-item config:name="ViewAreaWidth"
config:type="long">26301</config:config-item>
- <config:config-item config:name="ViewAreaHeight"
config:type="long">24026</config:config-item>
+ <config:config-item config:name="ViewAreaWidth"
config:type="long">48129</config:config-item>
+ <config:config-item config:name="ViewAreaHeight"
config:type="long">23021</config:config-item>
<config:config-item config:name="ShowRedlineChanges"
config:type="boolean">true</config:config-item>
<config:config-item config:name="InBrowseMode"
config:type="boolean">false</config:config-item>
<config:config-item-map-indexed config:name="Views">
<config:config-item-map-entry>
<config:config-item config:name="ViewId"
config:type="string">view2</config:config-item>
- <config:config-item config:name="ViewLeft"
config:type="long">4651</config:config-item>
- <config:config-item config:name="ViewTop"
config:type="long">35512</config:config-item>
+ <config:config-item config:name="ViewLeft"
config:type="long">37596</config:config-item>
+ <config:config-item config:name="ViewTop"
config:type="long">8964</config:config-item>
<config:config-item config:name="VisibleLeft"
config:type="long">0</config:config-item>
- <config:config-item config:name="VisibleTop"
config:type="long">28998</config:config-item>
- <config:config-item config:name="VisibleRight"
config:type="long">26300</config:config-item>
- <config:config-item config:name="VisibleBottom"
config:type="long">53023</config:config-item>
+ <config:config-item config:name="VisibleTop"
config:type="long">0</config:config-item>
+ <config:config-item config:name="VisibleRight"
config:type="long">48128</config:config-item>
+ <config:config-item config:name="VisibleBottom"
config:type="long">23019</config:config-item>
<config:config-item config:name="ZoomType"
config:type="short">0</config:config-item>
<config:config-item config:name="ViewLayoutColumns"
config:type="short">0</config:config-item>
<config:config-item config:name="ViewLayoutBookMode"
config:type="boolean">false</config:config-item>
<config:config-item config:name="ZoomFactor"
config:type="short">100</config:config-item>
<config:config-item config:name="IsSelectedFrame"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="KeepRatio"
config:type="boolean">false</config:config-item>
<config:config-item config:name="AnchoredTextOverflowLegacy"
config:type="boolean">false</config:config-item>
</config:config-item-map-entry>
</config:config-item-map-indexed>
</config:config-item-set>
<config:config-item-set config:name="ooo:configuration-settings">
<config:config-item config:name="PrintProspect"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintReversed"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintSingleJobs"
config:type="boolean">false</config:config-item>
<config:config-item config:name="PrintLeftPages"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrintTables"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrintControls"
config:type="boolean">true</config:config-item>
<config:config-item config:name="PrintPageBackground"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrintControls"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrintDrawings"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrintBlackFonts"
config:type="boolean">false</config:config-item>
<config:config-item config:name="PrintAnnotationMode"
config:type="short">0</config:config-item>
- <config:config-item config:name="PrintGraphics"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrintRightPages"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrintFaxName" config:type="string"/>
- <config:config-item config:name="PrintPaperFromSetup"
config:type="boolean">false</config:config-item>
<config:config-item config:name="PrintTextPlaceholder"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="HeaderSpacingBelowLastPara"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="ContinuousEndnotes"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ProtectFields"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ProtectBookmarks"
config:type="boolean">false</config:config-item>
<config:config-item config:name="EmptyDbFieldHidesPara"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="DisableOffPagePositioning"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="SubtractFlysAnchoredAtFlys"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PropLineSpacingShrinksFirstLine"
config:type="boolean">false</config:config-item>
<config:config-item config:name="ApplyParagraphMarkFormatToNumbering"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrintReversed"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TabOverMargin"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="GutterAtTop"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="TreatSingleColumnBreakAsPageBreak"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="EmbedSystemFonts"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="EmbedComplexScriptFonts"
config:type="boolean">true</config:config-item>
<config:config-item config:name="EmbedAsianScriptFonts"
config:type="boolean">true</config:config-item>
<config:config-item config:name="EmbedLatinScriptFonts"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="DisableOffPagePositioning"
config:type="boolean">false</config:config-item>
<config:config-item config:name="EmbedOnlyUsedFonts"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ContinuousEndnotes"
config:type="boolean">false</config:config-item>
<config:config-item config:name="EmbedFonts"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="SurroundTextWrapSmall"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="BackgroundParaOverDrawings"
config:type="boolean">false</config:config-item>
<config:config-item config:name="ClippedPictures"
config:type="boolean">false</config:config-item>
<config:config-item config:name="FloattableNomargins"
config:type="boolean">false</config:config-item>
<config:config-item config:name="UnbreakableNumberings"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="EmbedSystemFonts"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TabOverflow"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrintTables"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrintSingleJobs"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="SmallCapsPercentage66"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="CollapseEmptyCellPara"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="RsidRoot"
config:type="int">1813180</config:config-item>
- <config:config-item config:name="IsLabelDocument"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrinterName" config:type="string"/>
- <config:config-item config:name="OutlineLevelYieldsNumbering"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="HeaderSpacingBelowLastPara"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="AllowPrintJobCancel"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="UseOldPrinterMetrics"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="TabOverMargin"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="TabsRelativeToIndent"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="UseOldNumbering"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="InvertBorderSpacing"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintPaperFromSetup"
config:type="boolean">false</config:config-item>
<config:config-item config:name="UpdateFromTemplate"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrintBlackFonts"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TableRowKeep"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="IgnoreTabsAndBlanksForLineCalculation"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="EmbedComplexScriptFonts"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="UseOldPrinterMetrics"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="InvertBorderSpacing"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="CurrentDatabaseCommandType"
config:type="int">0</config:config-item>
+ <config:config-item config:name="LinkUpdateMode"
config:type="short">1</config:config-item>
+ <config:config-item config:name="AddParaSpacingToTableCells"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="FrameAutowidthWithMorePara"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="CurrentDatabaseCommand"
config:type="string"/>
+ <config:config-item config:name="PrinterIndependentLayout"
config:type="string">high-resolution</config:config-item>
+ <config:config-item config:name="ApplyUserData"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintFaxName" config:type="string"/>
+ <config:config-item config:name="CurrentDatabaseDataSource"
config:type="string"/>
+ <config:config-item config:name="ClipAsCharacterAnchoredWriterFlyFrames"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsKernAsianPunctuation"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="SaveThumbnail"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="UseFormerTextWrapping"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="AddExternalLeading"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="AddParaTableSpacing"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="StylesNoDefault"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ChartAutoUpdate"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrinterSetup" config:type="base64Binary"/>
+ <config:config-item config:name="AddParaTableSpacingAtStart"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="Rsid"
config:type="int">2929175</config:config-item>
+ <config:config-item config:name="EmbeddedDatabaseName"
config:type="string"/>
+ <config:config-item config:name="FieldAutoUpdate"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="OutlineLevelYieldsNumbering"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="FootnoteInColumnToPageEnd"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="AlignTabStopPosition"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="CharacterCompressionType"
config:type="short">0</config:config-item>
+ <config:config-item config:name="PrinterName" config:type="string"/>
<config:config-item config:name="SaveGlobalDocumentLinks"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TabsRelativeToIndent"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="Rsid"
config:type="int">2809848</config:config-item>
- <config:config-item config:name="EmbeddedDatabaseName"
config:type="string"/>
- <config:config-item config:name="SaveThumbnail"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="PrinterPaperFromSetup"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="UseFormerLineSpacing"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="AddParaLineSpacingToTableCells"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="UseFormerObjectPositioning"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintGraphics"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="SurroundTextWrapSmall"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ConsiderTextWrapOnObjPos"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="MsWordCompTrailingBlanks"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="TabAtLeftIndentForParagraphsInList"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="PrintRightPages"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="TabOverSpacing"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IgnoreFirstLineIndentInNumbering"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="RedlineProtectionKey"
config:type="base64Binary"/>
+ <config:config-item config:name="DoNotJustifyLinesWithManualBreak"
config:type="boolean">false</config:config-item>
<config:config-item config:name="PrintProspectRTL"
config:type="boolean">false</config:config-item>
<config:config-item config:name="PrintEmptyPages"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="ApplyUserData"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrintHiddenText"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="AddParaTableSpacingAtStart"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="FieldAutoUpdate"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="UseOldNumbering"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="AddParaTableSpacing"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="MsWordCompTrailingBlanks"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="IgnoreFirstLineIndentInNumbering"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrinterPaperFromSetup"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="CharacterCompressionType"
config:type="short">0</config:config-item>
- <config:config-item config:name="SaveVersionOnClose"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="ChartAutoUpdate"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="PrinterIndependentLayout"
config:type="string">high-resolution</config:config-item>
- <config:config-item config:name="IsKernAsianPunctuation"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="UseFormerObjectPositioning"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TreatSingleColumnBreakAsPageBreak"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="MathBaselineAlignment"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="DoNotResetParaAttrsForNumFont"
config:type="boolean">false</config:config-item>
<config:config-item config:name="AddFrameOffsets"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="AddVerticalFrameOffsets"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="SubtractFlysAnchoredAtFlys"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="AddParaSpacingToTableCells"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="AddExternalLeading"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="CurrentDatabaseDataSource"
config:type="string"/>
- <config:config-item config:name="AllowPrintJobCancel"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="ProtectForm"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="UseFormerLineSpacing"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="PrintDrawings"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="UseFormerTextWrapping"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="UnxForceZeroExtLeading"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="TabAtLeftIndentForParagraphsInList"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="RedlineProtectionKey"
config:type="base64Binary"/>
- <config:config-item config:name="PropLineSpacingShrinksFirstLine"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="ConsiderTextWrapOnObjPos"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="StylesNoDefault"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="LinkUpdateMode"
config:type="short">1</config:config-item>
- <config:config-item config:name="AlignTabStopPosition"
config:type="boolean">true</config:config-item>
- <config:config-item config:name="DoNotJustifyLinesWithManualBreak"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="DoNotResetParaAttrsForNumFont"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="CurrentDatabaseCommandType"
config:type="int">0</config:config-item>
+ <config:config-item config:name="IgnoreTabsAndBlanksForLineCalculation"
config:type="boolean">false</config:config-item>
<config:config-item config:name="LoadReadonly"
config:type="boolean">false</config:config-item>
<config:config-item config:name="DoNotCaptureDrawObjsOnPage"
config:type="boolean">false</config:config-item>
- <config:config-item config:name="CurrentDatabaseCommand"
config:type="string"/>
- <config:config-item config:name="PrinterSetup" config:type="base64Binary"/>
- <config:config-item config:name="ClipAsCharacterAnchoredWriterFlyFrames"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="AddVerticalFrameOffsets"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="UnxForceZeroExtLeading"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="IsLabelDocument"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="TableRowKeep"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="RsidRoot"
config:type="int">1813180</config:config-item>
+ <config:config-item config:name="PrintHiddenText"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="ProtectForm"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="MsWordCompMinLineHeightByFly"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="BackgroundParaOverDrawings"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="SaveVersionOnClose"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="MathBaselineAlignment"
config:type="boolean">false</config:config-item>
+ <config:config-item config:name="SmallCapsPercentage66"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="CollapseEmptyCellPara"
config:type="boolean">true</config:config-item>
+ <config:config-item config:name="TabOverflow"
config:type="boolean">false</config:config-item>
</config:config-item-set>
</office:settings>
<office:scripts>
@@ -131,15 +140,15 @@
</office:script>
</office:scripts>
<office:font-face-decls>
- <style:font-face style:name="StarSymbol" svg:font-family="StarSymbol"/>
- <style:font-face style:name="Liberation Serif2"
svg:font-family="'Liberation Serif'"
style:font-family-generic="roman" style:font-pitch="variable"/>
- <style:font-face style:name="Liberation Serif"
svg:font-family="'Liberation Serif'" style:font-adornments="Bold"
style:font-family-generic="roman" style:font-pitch="variable"/>
- <style:font-face style:name="Liberation Serif1"
svg:font-family="'Liberation Serif'" style:font-adornments="Regular"
style:font-family-generic="roman" style:font-pitch="variable"/>
- <style:font-face style:name="Thorndale AMT" svg:font-family="'Thorndale
AMT'" style:font-family-generic="roman" style:font-pitch="variable"/>
- <style:font-face style:name="Liberation Sans1"
svg:font-family="'Liberation Sans'" style:font-family-generic="swiss"
style:font-pitch="variable"/>
- <style:font-face style:name="Liberation Sans"
svg:font-family="'Liberation Sans'" style:font-adornments="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"/>
<style:font-face style:name="Andale Sans UI" svg:font-family="'Andale
Sans UI'" style:font-family-generic="system" style:font-pitch="variable"/>
<style:font-face style:name="DejaVu Sans" svg:font-family="'DejaVu
Sans'" style:font-family-generic="system" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Sans"
svg:font-family="'Liberation Sans'" style:font-family-generic="swiss"
style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Sans1"
svg:font-family="'Liberation Sans'" style:font-adornments="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Serif"
svg:font-family="'Liberation Serif'"
style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Serif1"
svg:font-family="'Liberation Serif'" style:font-adornments="Bold"
style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="Liberation Serif2"
svg:font-family="'Liberation Serif'" style:font-adornments="Regular"
style:font-family-generic="roman" style:font-pitch="variable"/>
+ <style:font-face style:name="StarSymbol" svg:font-family="StarSymbol"/>
+ <style:font-face style:name="Thorndale AMT" svg:font-family="'Thorndale
AMT'" style:font-family-generic="roman" style:font-pitch="variable"/>
</office:font-face-decls>
<office:styles>
<style:default-style style:family="graphic">
@@ -147,11 +156,11 @@
<style:paragraph-properties style:text-autospace="ideograph-alpha"
style:line-break="strict" style:writing-mode="lr-tb"
style:font-independent-line-spacing="false">
<style:tab-stops/>
</style:paragraph-properties>
- <style:text-properties style:use-window-font-color="true"
style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="en"
fo:country="US" style:letter-kerning="true" style:font-name-asian="Andale Sans
UI" style:font-size-asian="10.5pt" style:language-asian="zxx"
style:country-asian="none" style:font-name-complex="Andale Sans UI"
style:font-size-complex="12pt" style:language-complex="zxx"
style:country-complex="none"/>
+ <style:text-properties style:use-window-font-color="true"
loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt"
fo:language="en" fo:country="US" style:letter-kerning="true"
style:font-name-asian="Andale Sans UI" style:font-size-asian="10.5pt"
style:language-asian="zxx" style:country-asian="none"
style:font-name-complex="Andale Sans UI" style:font-size-complex="12pt"
style:language-complex="zxx" style:country-complex="none"/>
</style:default-style>
<style:default-style style:family="paragraph">
<style:paragraph-properties fo:hyphenation-ladder-count="no-limit"
style:text-autospace="ideograph-alpha" style:punctuation-wrap="hanging"
style:line-break="strict" style:tab-stop-distance="1.251cm"
style:writing-mode="lr-tb"/>
- <style:text-properties style:use-window-font-color="true"
style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="en"
fo:country="US" style:letter-kerning="true" style:font-name-asian="Andale Sans
UI" style:font-size-asian="10.5pt" style:language-asian="zxx"
style:country-asian="none" style:font-name-complex="Andale Sans UI"
style:font-size-complex="12pt" style:language-complex="zxx"
style:country-complex="none" fo:hyphenate="false"
fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2"
loext:hyphenation-no-caps="false"/>
+ <style:text-properties style:use-window-font-color="true"
loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt"
fo:language="en" fo:country="US" style:letter-kerning="true"
style:font-name-asian="Andale Sans UI" style:font-size-asian="10.5pt"
style:language-asian="zxx" style:country-asian="none"
style:font-name-complex="Andale Sans UI" style:font-size-complex="12pt"
style:language-complex="zxx" style:country-complex="none" fo:hyphenate="false"
fo:hyphenation-remain-char-count="2" fo:hyphenation-push-char-count="2"
loext:hyphenation-no-caps="false"/>
</style:default-style>
<style:default-style style:family="table">
<style:table-properties table:border-model="collapsing"/>
@@ -160,21 +169,21 @@
<style:table-row-properties fo:keep-together="auto"/>
</style:default-style>
<style:style style:name="Standard" style:family="paragraph"
style:class="text">
- <style:text-properties style:font-name="Liberation Sans"
fo:font-family="'Liberation Sans'" style:font-style-name="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"
style:font-size-asian="10.5pt"/>
+ <style:text-properties style:font-name="Liberation Sans1"
fo:font-family="'Liberation Sans'" style:font-style-name="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"
style:font-size-asian="10.5pt"/>
</style:style>
<style:style style:name="Heading" style:family="paragraph"
style:parent-style-name="Standard" style:next-style-name="Text_20_body"
style:class="text">
- <style:paragraph-properties fo:margin-top="0.423cm"
fo:margin-bottom="0.212cm" loext:contextual-spacing="false"
fo:keep-with-next="always"/>
- <style:text-properties style:font-name="Liberation Serif1"
fo:font-family="'Liberation Serif'" style:font-style-name="Regular"
style:font-family-generic="roman" style:font-pitch="variable"
fo:font-size="16pt" style:font-name-asian="DejaVu Sans"
style:font-family-asian="'DejaVu Sans'"
style:font-family-generic-asian="system" style:font-pitch-asian="variable"
style:font-size-asian="14pt" style:font-name-complex="DejaVu Sans"
style:font-family-complex="'DejaVu Sans'"
style:font-family-generic-complex="system" style:font-pitch-complex="variable"
style:font-size-complex="14pt"/>
+ <style:paragraph-properties fo:margin-top="0.423cm"
fo:margin-bottom="0.212cm" style:contextual-spacing="false"
fo:keep-with-next="always"/>
+ <style:text-properties style:font-name="Liberation Serif2"
fo:font-family="'Liberation Serif'" style:font-style-name="Regular"
style:font-family-generic="roman" style:font-pitch="variable"
fo:font-size="16pt" style:font-name-asian="DejaVu Sans"
style:font-family-asian="'DejaVu Sans'"
style:font-family-generic-asian="system" style:font-pitch-asian="variable"
style:font-size-asian="14pt" style:font-name-complex="DejaVu Sans"
style:font-family-complex="'DejaVu Sans'"
style:font-family-generic-complex="system" style:font-pitch-complex="variable"
style:font-size-complex="14pt"/>
</style:style>
<style:style style:name="Text_20_body" style:display-name="Text body"
style:family="paragraph" style:parent-style-name="Standard" style:class="text">
- <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.212cm"
loext:contextual-spacing="false"/>
- <style:text-properties style:font-name="Liberation Sans"
fo:font-family="'Liberation Sans'" style:font-style-name="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"
style:font-size-asian="10.5pt"/>
+ <style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.212cm"
style:contextual-spacing="false"/>
+ <style:text-properties style:font-name="Liberation Sans1"
fo:font-family="'Liberation Sans'" style:font-style-name="Regular"
style:font-family-generic="swiss" style:font-pitch="variable"
style:font-size-asian="10.5pt"/>
</style:style>
<style:style style:name="List" style:family="paragraph"
style:parent-style-name="Text_20_body" style:class="list">
<style:text-properties style:font-size-asian="12pt"/>
</style:style>
<style:style style:name="Caption" style:family="paragraph"
style:parent-style-name="Standard" style:class="extra">
- <style:paragraph-properties fo:margin-top="0.212cm"
fo:margin-bottom="0.212cm" loext:contextual-spacing="false"
text:number-lines="false" text:line-number="0"/>
+ <style:paragraph-properties fo:margin-top="0.212cm"
fo:margin-bottom="0.212cm" style:contextual-spacing="false"
text:number-lines="false" text:line-number="0"/>
<style:text-properties fo:font-size="12pt" fo:font-style="italic"
style:font-size-asian="12pt" style:font-style-asian="italic"
style:font-size-complex="12pt" style:font-style-complex="italic"/>
</style:style>
<style:style style:name="Index" style:family="paragraph"
style:parent-style-name="Standard" style:class="index">
@@ -187,7 +196,7 @@
</style:style>
<style:style style:name="Table_20_Heading" style:display-name="Table
Heading" style:family="paragraph" style:parent-style-name="Table_20_Contents"
style:class="extra" style:master-page-name="">
<style:paragraph-properties fo:text-align="center"
style:justify-single-word="false" style:page-number="auto"
text:number-lines="false" text:line-number="0"/>
- <style:text-properties style:font-name="Liberation Serif"
fo:font-family="'Liberation Serif'" style:font-style-name="Bold"
style:font-family-generic="roman" style:font-pitch="variable"
fo:font-weight="bold" style:font-size-asian="10.5pt"
style:font-weight-asian="bold" style:font-weight-complex="bold"/>
+ <style:text-properties style:font-name="Liberation Serif1"
fo:font-family="'Liberation Serif'" style:font-style-name="Bold"
style:font-family-generic="roman" style:font-pitch="variable"
fo:font-weight="bold" style:font-size-asian="10.5pt"
style:font-weight-asian="bold" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="Heading_20_1" style:display-name="Heading 1"
style:family="paragraph" style:parent-style-name="Heading"
style:next-style-name="Text_20_body" style:class="text">
<style:text-properties fo:font-size="16pt" fo:font-weight="bold"
style:font-size-asian="115%" style:font-weight-asian="bold"
style:font-size-complex="115%" style:font-weight-complex="bold"/>
@@ -229,51 +238,51 @@
</style:style>
<style:style style:name="Text" style:family="paragraph"
style:parent-style-name="Caption" style:class="extra"/>
<style:style style:name="Quotations" style:family="paragraph"
style:parent-style-name="Standard" style:class="html">
- <style:paragraph-properties fo:margin-left="1cm" fo:margin-right="1cm"
fo:margin-top="0cm" fo:margin-bottom="0.499cm" loext:contextual-spacing="false"
fo:text-indent="0cm" style:auto-text-indent="false"/>
+ <style:paragraph-properties fo:margin-left="1cm" fo:margin-right="1cm"
fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:contextual-spacing="false"
fo:text-indent="0cm" style:auto-text-indent="false"/>
</style:style>
<style:style style:name="Title" style:family="paragraph"
style:parent-style-name="Heading" style:next-style-name="Text_20_body"
style:class="chapter">
<style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
<style:text-properties fo:font-size="28pt" fo:font-weight="bold"
style:font-size-asian="28pt" style:font-weight-asian="bold"
style:font-size-complex="28pt" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="Subtitle" style:family="paragraph"
style:parent-style-name="Heading" style:next-style-name="Text_20_body"
style:class="chapter">
- <style:paragraph-properties fo:margin-top="0.106cm"
fo:margin-bottom="0.212cm" loext:contextual-spacing="false"
fo:text-align="center" style:justify-single-word="false"/>
+ <style:paragraph-properties fo:margin-top="0.106cm"
fo:margin-bottom="0.212cm" style:contextual-spacing="false"
fo:text-align="center" style:justify-single-word="false"/>
<style:text-properties fo:font-size="18pt" style:font-size-asian="18pt"
style:font-size-complex="18pt"/>
</style:style>
<style:style style:name="Placeholder" style:family="text">
- <style:text-properties fo:font-variant="small-caps" fo:color="#008080"
style:text-underline-style="dotted" style:text-underline-width="auto"
style:text-underline-color="font-color"/>
+ <style:text-properties fo:font-variant="small-caps" fo:color="#008080"
loext:opacity="100%" style:text-underline-style="dotted"
style:text-underline-width="auto" style:text-underline-color="font-color"/>
</style:style>
<style:style style:name="Bullet_20_Symbols" style:display-name="Bullet
Symbols" style:family="text">
<style:text-properties style:font-name="StarSymbol"
fo:font-family="StarSymbol" fo:font-size="9pt"
style:font-name-asian="StarSymbol" style:font-family-asian="StarSymbol"
style:font-size-asian="9pt" style:font-name-complex="StarSymbol"
style:font-family-complex="StarSymbol" style:font-size-complex="9pt"/>
</style:style>
<text:outline-style style:name="Outline">
- <text:outline-level-style text:level="1" style:num-format="">
+ <text:outline-level-style text:level="1" loext:num-list-format="%1%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="2" style:num-format="">
+ <text:outline-level-style text:level="2" loext:num-list-format="%2%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="3" style:num-format="">
+ <text:outline-level-style text:level="3" loext:num-list-format="%3%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="4" style:num-format="">
+ <text:outline-level-style text:level="4" loext:num-list-format="%4%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="5" style:num-format="">
+ <text:outline-level-style text:level="5" loext:num-list-format="%5%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="6" style:num-format="">
+ <text:outline-level-style text:level="6" loext:num-list-format="%6%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="7" style:num-format="">
+ <text:outline-level-style text:level="7" loext:num-list-format="%7%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="8" style:num-format="">
+ <text:outline-level-style text:level="8" loext:num-list-format="%8%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="9" style:num-format="">
+ <text:outline-level-style text:level="9" loext:num-list-format="%9%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
- <text:outline-level-style text:level="10" style:num-format="">
+ <text:outline-level-style text:level="10" loext:num-list-format="%10%"
style:num-format="">
<style:list-level-properties text:min-label-distance="0.381cm"/>
</text:outline-level-style>
</text:outline-style>
@@ -332,68 +341,64 @@
<style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
<style:text-properties officeooo:paragraph-rsid="00224f9c"/>
</style:style>
- <style:style style:name="P6" style:family="paragraph"
style:parent-style-name="Header">
+ <style:style style:name="P6" style:family="paragraph"
style:parent-style-name="Footer">
+ <style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
+ <style:text-properties officeooo:paragraph-rsid="00224f9c"/>
+ </style:style>
+ <style:style style:name="P7" style:family="paragraph"
style:parent-style-name="Header">
<style:paragraph-properties fo:text-align="start"
style:justify-single-word="false"/>
<style:text-properties fo:font-size="12pt"
officeooo:paragraph-rsid="00224f9c" style:font-size-asian="12pt"
style:font-size-complex="12pt"/>
</style:style>
- <style:style style:name="P7" style:family="paragraph"
style:parent-style-name="Footer">
- <style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
- <style:text-properties officeooo:paragraph-rsid="00224f9c"/>
- </style:style>
<style:style style:name="P8" style:family="paragraph"
style:parent-style-name="Footer">
<style:paragraph-properties fo:text-align="end"
style:justify-single-word="false"/>
</style:style>
<style:style style:name="P9" style:family="paragraph"
style:parent-style-name="Text_20_body">
- <style:text-properties style:font-name="Liberation Serif2"/>
+ <style:text-properties style:font-name="Liberation Serif"/>
</style:style>
<style:style style:name="P10" style:family="paragraph"
style:parent-style-name="Table_20_Heading">
<style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
- <style:text-properties style:font-name="Liberation Serif2"/>
+ <style:text-properties style:font-name="Liberation Serif"/>
</style:style>
<style:style style:name="P11" style:family="paragraph"
style:parent-style-name="Table_20_Contents">
- <style:text-properties style:font-name="Liberation Serif2"/>
+ <style:text-properties style:font-name="Liberation Serif"/>
</style:style>
<style:style style:name="P12" style:family="paragraph"
style:parent-style-name="Table_20_Contents">
<style:paragraph-properties fo:text-align="end"
style:justify-single-word="false"/>
- <style:text-properties style:font-name="Liberation Serif2"/>
+ <style:text-properties style:font-name="Liberation Serif"/>
</style:style>
<style:style style:name="P13" style:family="paragraph"
style:parent-style-name="Table_20_Contents">
- <style:text-properties style:font-name="Liberation Serif2"
officeooo:paragraph-rsid="0025e811"/>
+ <style:text-properties style:font-name="Liberation Serif"
officeooo:paragraph-rsid="0025e811"/>
</style:style>
<style:style style:name="P14" style:family="paragraph"
style:parent-style-name="Standard">
<style:paragraph-properties fo:break-before="page"/>
</style:style>
<style:style style:name="P15" style:family="paragraph"
style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false"/>
- <style:text-properties style:font-name="Liberation Sans1"/>
+ <style:text-properties style:font-name="Liberation Sans"/>
</style:style>
- <style:style style:name="P16" style:family="paragraph"
style:parent-style-name="Standard">
+ <style:style style:name="P16" style:family="paragraph"
style:parent-style-name="Standard" style:master-page-name="">
+ <style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"
fo:break-before="page"/>
+ <style:text-properties style:font-name="Liberation Sans"/>
+ </style:style>
+ <style:style style:name="P17" style:family="paragraph"
style:parent-style-name="Standard">
<style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false"/>
- <style:text-properties style:font-name="Liberation Sans1"
officeooo:paragraph-rsid="0028d873"/>
- </style:style>
- <style:style style:name="P17" style:family="paragraph"
style:parent-style-name="Standard" style:master-page-name="">
- <style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"
fo:break-before="page"/>
- <style:text-properties style:font-name="Liberation Sans1"/>
+ <style:text-properties style:font-name="Liberation Sans"
officeooo:paragraph-rsid="0028d873"/>
</style:style>
<style:style style:name="P18" style:family="paragraph"
style:parent-style-name="Standard" style:master-page-name="">
<style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"
fo:break-before="page"/>
- <style:text-properties style:font-name="Liberation Sans1"
officeooo:paragraph-rsid="0028d873"/>
+ <style:text-properties style:font-name="Liberation Sans"
officeooo:paragraph-rsid="0028d873"/>
</style:style>
- <style:style style:name="P19" style:family="paragraph"
style:parent-style-name="Heading_20_1">
+ <style:style style:name="P19" style:family="paragraph"
style:parent-style-name="Standard" style:master-page-name="">
+ <style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"
fo:break-before="page"/>
+ <style:text-properties style:font-name="Liberation Sans" fo:font-size="6pt"
officeooo:paragraph-rsid="0028d873" style:font-size-asian="5.25pt"
style:font-size-complex="6pt"/>
+ </style:style>
+ <style:style style:name="P20" style:family="paragraph"
style:parent-style-name="Heading_20_1">
<style:paragraph-properties fo:text-align="center"
style:justify-single-word="false"/>
<style:text-properties style:text-underline-style="solid"
style:text-underline-width="auto" style:text-underline-color="font-color"/>
</style:style>
- <style:style style:name="P20" style:family="paragraph"
style:parent-style-name="Standard">
+ <style:style style:name="P21" style:family="paragraph"
style:parent-style-name="Standard">
<style:text-properties officeooo:paragraph-rsid="001d64ef"/>
</style:style>
- <style:style style:name="P21" style:family="paragraph"
style:parent-style-name="Standard">
- <style:paragraph-properties fo:margin-left="11.28cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false"/>
- <style:text-properties style:font-name="Liberation Sans1"
officeooo:paragraph-rsid="0028d873"/>
- </style:style>
- <style:style style:name="P22" style:family="paragraph"
style:parent-style-name="Standard" style:master-page-name="">
- <style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm"
fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="auto"
fo:break-before="page"/>
- <style:text-properties style:font-name="Liberation Sans1"
fo:font-size="6pt" officeooo:paragraph-rsid="0028d873"
style:font-size-asian="5.25pt" style:font-size-complex="6pt"/>
- </style:style>
<style:style style:name="T1" style:family="text">
<style:text-properties fo:font-weight="bold" style:font-weight-asian="bold"
style:font-weight-complex="bold"/>
</style:style>
@@ -401,7 +406,7 @@
<style:text-properties fo:font-weight="normal"
style:font-weight-asian="normal" style:font-weight-complex="normal"/>
</style:style>
<style:page-layout style:name="pm1">
- <style:page-layout-properties fo:page-width="20.999cm"
fo:page-height="29.699cm" style:num-format="1"
style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm"
fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb"
style:layout-grid-color="#c0c0c0" style:layout-grid-lines="44"
style:layout-grid-base-height="0.55cm" style:layout-grid-ruby-height="0cm"
style:layout-grid-mode="none" style:layout-grid-ruby-below="false"
style:layout-grid-print="true" style:layout-grid-display="true"
style:footnote-max-height="0cm">
+ <style:page-layout-properties fo:page-width="20.999cm"
fo:page-height="29.699cm" style:num-format="1"
style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm"
fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb"
style:layout-grid-color="#c0c0c0" style:layout-grid-lines="44"
style:layout-grid-base-height="0.55cm" style:layout-grid-ruby-height="0cm"
style:layout-grid-mode="none" style:layout-grid-ruby-below="false"
style:layout-grid-print="true" style:layout-grid-display="true"
style:footnote-max-height="0cm" loext:margin-gutter="0cm">
<style:footnote-sep style:width="0.018cm"
style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm"
style:line-style="none" style:adjustment="left" style:rel-width="25%"
style:color="#000000"/>
</style:page-layout-properties>
<style:header-style>
@@ -411,16 +416,19 @@
<style:header-footer-properties fo:min-height="0cm" fo:margin-left="0cm"
fo:margin-right="0cm" fo:margin-top="0.499cm"/>
</style:footer-style>
</style:page-layout>
+ <style:style style:name="dp1" style:family="drawing-page">
+ <style:drawing-page-properties draw:background-size="full"/>
+ </style:style>
</office:automatic-styles>
<office:master-styles>
- <style:master-page style:name="Standard" style:page-layout-name="pm1">
+ <style:master-page style:name="Standard" style:page-layout-name="pm1"
draw:style-name="dp1">
<style:header>
<text:p text:style-name="P1"><text:placeholder
text:placeholder-type="text"><if test="company and
company.header"></text:placeholder></text:p>
<text:p text:style-name="P1"><text:placeholder
text:placeholder-type="text"><for each="line in
company.header.split('\n')"></text:placeholder></text:p>
<text:p text:style-name="P1"><text:placeholder
text:placeholder-type="text"><line></text:placeholder></text:p>
<text:p text:style-name="P1"><text:placeholder
text:placeholder-type="text"></for></text:placeholder></text:p>
<text:p text:style-name="P2"><text:placeholder
text:placeholder-type="text"></if></text:placeholder></text:p>
- <text:p text:style-name="P3"><text:placeholder
text:placeholder-type="text"><company.rec_name if company else
''></text:placeholder></text:p>
+ <text:p text:style-name="P3"><text:placeholder
text:placeholder-type="text"><company.rec_name if company else
''></text:placeholder></text:p>
</style:header>
<style:footer>
<text:p text:style-name="P2"><text:placeholder
text:placeholder-type="text"><if test="company and
company.footer"></text:placeholder></text:p>
@@ -443,19 +451,20 @@
<text:sequence-decl text:display-outline-level="0" text:name="Figure"/>
</text:sequence-decls>
<text:p text:style-name="P14"><text:placeholder
text:placeholder-type="text"><for each="shipment in
records"></text:placeholder></text:p>
- <text:p text:style-name="P22"/>
- <text:p text:style-name="P16"><text:placeholder
text:placeholder-type="text"><replace
text:p="set_lang(shipment.delivery_address.party.lang)"></text:placeholder></text:p>
- <text:p text:style-name="P16"><text:placeholder
text:placeholder-type="text"><replace
text:p="shipment.set_lang(shipment.delivery_address.party.lang)"></text:placeholder></text:p>
- <text:p text:style-name="P16"><text:placeholder
text:placeholder-type="text"><for each="line in
shipment.delivery_address.full_address.split('\n')"></text:placeholder></text:p>
+ <text:p text:style-name="P19"/>
+ <text:p text:style-name="P17"><text:placeholder
text:placeholder-type="text"><replace
text:p="set_lang(shipment.delivery_address.party.lang)"></text:placeholder></text:p>
+ <text:p text:style-name="P17"><text:placeholder
text:placeholder-type="text"><replace
text:p="shipment.set_lang(shipment.delivery_address.party.lang)"></text:placeholder></text:p>
+ <text:p text:style-name="P17"><text:placeholder
text:placeholder-type="text"><shipment.customer.full_name></text:placeholder></text:p>
+ <text:p text:style-name="P17"><text:placeholder
text:placeholder-type="text"><for each="line in
shipment.delivery_address.full_address.split('\n')"></text:placeholder></text:p>
<text:p text:style-name="P15"><text:placeholder
text:placeholder-type="text"><line></text:placeholder></text:p>
<text:p text:style-name="P15"><text:placeholder
text:placeholder-type="text"></for></text:placeholder></text:p>
- <text:p text:style-name="P19">Delivery Note</text:p>
- <text:p text:style-name="P20"><text:span text:style-name="T1">Shipment
Number:</text:span> <text:placeholder
text:placeholder-type="text"><shipment.number></text:placeholder><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Customer Code:</text:span><text:span text:style-name="T2">
</text:span><text:span text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.customer.code></text:placeholder></text:span><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Reference:</text:span><text:span text:style-name="T2">
</text:span><text:span text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.origins or
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:placeholder text:placeholder-type="text"><',
' if (shipment.origins and shipment.reference) else
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.reference or
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Date: </text:span><text:span
text:style-name="T2"><text:placeholder
text:placeholder-type="text"><format_date(shipment.effective_date and
shipment.effective_date or datetime.datetime.today(),
shipment.delivery_address.party.lang)></text:placeholder></text:span></text:p>
+ <text:p text:style-name="P20">Delivery Note</text:p>
+ <text:p text:style-name="P21"><text:span text:style-name="T1">Shipment
Number:</text:span> <text:placeholder
text:placeholder-type="text"><shipment.number></text:placeholder><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Customer Code:</text:span><text:span text:style-name="T2">
</text:span><text:span text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.customer.code></text:placeholder></text:span><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Reference:</text:span><text:span text:style-name="T2">
</text:span><text:span text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.origins or
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:placeholder text:placeholder-type="text"><',
' if (shipment.origins and shipment.reference) else
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:placeholder
text:placeholder-type="text"><shipment.reference or
''></text:placeholder></text:span><text:span
text:style-name="T2"><text:line-break/></text:span><text:span
text:style-name="T1">Date: </text:span><text:span
text:style-name="T2"><text:placeholder
text:placeholder-type="text"><format_date(shipment.effective_date and
shipment.effective_date or datetime.datetime.today(),
shipment.delivery_address.party.lang)></text:placeholder></text:span></text:p>
<table:table table:name="Table1" table:style-name="Table1">
<table:table-column table:style-name="Table1.A"/>
<table:table-column table:style-name="Table1.B"/>
<table:table-header-rows>
- <table:table-row>
+ <table:table-row table:style-name="TableLine94459967088608">
<table:table-cell table:style-name="Table1.A1"
office:value-type="string">
<text:p text:style-name="P10">Product</text:p>
</table:table-cell>
@@ -464,13 +473,13 @@
</table:table-cell>
</table:table-row>
</table:table-header-rows>
- <table:table-row>
+ <table:table-row table:style-name="TableLine94459967142064">
<table:table-cell table:style-name="Table1.A4"
table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P11"><text:placeholder
text:placeholder-type="text"><for each="move in
shipment.outgoing_moves"></text:placeholder></text:p>
</table:table-cell>
<table:covered-table-cell/>
</table:table-row>
- <table:table-row>
+ <table:table-row table:style-name="TableLine94459967143328">
<table:table-cell table:style-name="Table1.A3" office:value-type="string">
<text:p text:style-name="P13"><text:placeholder
text:placeholder-type="text"><move.product.rec_name></text:placeholder></text:p>
</table:table-cell>
@@ -478,7 +487,7 @@
<text:p text:style-name="P12"><text:placeholder
text:placeholder-type="text"><format_number_symbol(move.quantity,
shipment.delivery_address.party.lang, move.uom,
digits=move.uom.digits)></text:placeholder></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row>
+ <table:table-row table:style-name="TableLine94459967144848">
<table:table-cell table:style-name="Table1.A4"
table:number-columns-spanned="2" office:value-type="string">
<text:p text:style-name="P11"><text:placeholder
text:placeholder-type="text"></for></text:placeholder></text:p>
</table:table-cell>
@@ -488,4 +497,4 @@
<text:p text:style-name="P9"><text:placeholder
text:placeholder-type="text"></for></text:placeholder></text:p>
</office:text>
</office:body>
-</office:document>
+</office:document>
\ No newline at end of file
diff -r 11631a8664bf -r 9b8ef75eb991 location.py
--- a/location.py Thu Sep 08 13:19:52 2022 +0200
+++ b/location.py Sat Sep 10 18:34:29 2022 +0200
@@ -6,17 +6,15 @@
from sql import Column
-from trytond import backend
from trytond.cache import Cache
from trytond.i18n import gettext
from trytond.model import (
- DeactivableMixin, MatchMixin, Model, ModelSQL, ModelView, ValueMixin,
- fields, sequence_ordered, tree)
+ DeactivableMixin, MatchMixin, Model, ModelSQL, ModelView, fields,
+ sequence_ordered, tree)
from trytond.modules.product import price_digits, round_price
-from trytond.pool import Pool, PoolMeta
+from trytond.pool import Pool
from trytond.pyson import Eval, If
from trytond.tools import grouped_slice
-from trytond.tools.multivalue import migrate_property
from trytond.transaction import Transaction
from .exceptions import LocationValidationError
@@ -148,6 +146,14 @@
],
help="The warehouses that use the location for waste products.")
+ allow_pickup = fields.Boolean(
+ "Allow Pickup",
+ states={
+ 'invisible': (
+ (Eval('type') != 'warehouse')
+ & ~Eval('address')),
+ })
+
quantity = fields.Function(
fields.Float(
"Quantity", digits=(16, Eval('quantity_uom_digits', 2)),
@@ -636,83 +642,6 @@
]
-supplier_location = fields.Many2One(
- 'stock.location', "Supplier Location", domain=[('type', '=', 'supplier')],
- help="The default source location for stock received from the party.")
-customer_location = fields.Many2One(
- 'stock.location', "Customer Location", domain=[('type', '=', 'customer')],
- help="The default destination location for stock sent to the party.")
-
-
-class Party(metaclass=PoolMeta):
- __name__ = 'party.party'
- supplier_location = fields.MultiValue(supplier_location)
- customer_location = fields.MultiValue(customer_location)
- locations = fields.One2Many(
- 'party.party.location', 'party', "Locations")
-
- @classmethod
- def multivalue_model(cls, field):
- pool = Pool()
- if field in {'supplier_location', 'customer_location'}:
- return pool.get('party.party.location')
- return super(Party, cls).multivalue_model(field)
-
- @classmethod
- def default_supplier_location(cls, **pattern):
- return cls.multivalue_model(
- 'supplier_location').default_supplier_location()
-
- @classmethod
- def default_customer_location(cls, **pattern):
- return cls.multivalue_model(
- 'customer_location').default_customer_location()
-
-
-class PartyLocation(ModelSQL, ValueMixin):
- "Party Location"
- __name__ = 'party.party.location'
- party = fields.Many2One(
- 'party.party', "Party", ondelete='CASCADE', select=True)
- supplier_location = supplier_location
- customer_location = customer_location
-
- @classmethod
- def __register__(cls, module_name):
- exist = backend.TableHandler.table_exist(cls._table)
-
- super(PartyLocation, cls).__register__(module_name)
-
- if not exist:
- cls._migrate_property([], [], [])
-
- @classmethod
- def _migrate_property(cls, field_names, value_names, fields):
- field_names.extend(['supplier_location', 'customer_location'])
- value_names.extend(['supplier_location', 'customer_location'])
- migrate_property(
- 'party.party', field_names, cls, value_names,
- parent='party', fields=fields)
-
- @classmethod
- def default_supplier_location(cls):
- pool = Pool()
- ModelData = pool.get('ir.model.data')
- try:
- return ModelData.get_id('stock', 'location_supplier')
- except KeyError:
- return None
-
- @classmethod
- def default_customer_location(cls):
- pool = Pool()
- ModelData = pool.get('ir.model.data')
- try:
- return ModelData.get_id('stock', 'location_customer')
- except KeyError:
- return None
-
-
class ProductsByLocationsContext(ModelView):
'Products by Locations'
__name__ = 'stock.products_by_locations.context'
diff -r 11631a8664bf -r 9b8ef75eb991 location.xml
--- a/location.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/location.xml Sat Sep 10 18:34:29 2022 +0200
@@ -126,13 +126,6 @@
<field name="perm_delete" eval="True"/>
</record>
- <record model="ir.ui.view" id="party_view_form">
- <field name="model">party.party</field>
- <field name="inherit" ref="party.party_view_form"/>
- <field name="name">party_form</field>
- </record>
-
-
<record model="ir.ui.view" id="location_lead_time_view_list">
<field name="model">stock.location.lead_time</field>
<field name="type">tree</field>
diff -r 11631a8664bf -r 9b8ef75eb991 party.py
--- a/party.py Thu Sep 08 13:19:52 2022 +0200
+++ b/party.py Sat Sep 10 18:34:29 2022 +0200
@@ -1,9 +1,122 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
+from trytond import backend
from trytond.i18n import gettext
-from trytond.model import fields
+from trytond.model import ModelSQL, ValueMixin, fields
from trytond.modules.party.exceptions import EraseError
from trytond.pool import Pool, PoolMeta
+from trytond.tools.multivalue import migrate_property
+from trytond.transaction import Transaction
+
+supplier_location = fields.Many2One(
+ 'stock.location', "Supplier Location", domain=[('type', '=', 'supplier')],
+ help="The default source location for stock received from the party.")
+customer_location = fields.Many2One(
+ 'stock.location', "Customer Location", domain=[('type', '=', 'customer')],
+ help="The default destination location for stock sent to the party.")
+
+
+class Party(metaclass=PoolMeta):
+ __name__ = 'party.party'
+
+ supplier_location = fields.MultiValue(supplier_location)
+ customer_location = fields.MultiValue(customer_location)
+ locations = fields.One2Many(
+ 'party.party.location', 'party', "Locations")
+ delivered_to_warehouses = fields.Many2Many(
+ 'party.party-delivered_to-stock.location', 'party', 'location',
+ "Delivered to Warehouses",
+ domain=[
+ ('type', '=', 'warehouse'),
+ ],
+ filter=[
+ ('allow_pickup', '=', True),
+ ])
+
+ @classmethod
+ def multivalue_model(cls, field):
+ pool = Pool()
+ if field in {'supplier_location', 'customer_location'}:
+ return pool.get('party.party.location')
+ return super().multivalue_model(field)
+
+ @classmethod
+ def default_supplier_location(cls, **pattern):
+ return cls.multivalue_model(
+ 'supplier_location').default_supplier_location()
+
+ @classmethod
+ def default_customer_location(cls, **pattern):
+ return cls.multivalue_model(
+ 'customer_location').default_customer_location()
+
+ def address_get(self, type=None):
+ pool = Pool()
+ Location = pool.get('stock.location')
+ context = Transaction().context
+ address = super().address_get(type=type)
+ if (type == 'delivery'
+ and context.get('warehouse')):
+ warehouse = Location(context['warehouse'])
+ if warehouse in self.delivered_to_warehouses:
+ address = warehouse.address
+ return address
+
+
+class PartyLocation(ModelSQL, ValueMixin):
+ "Party Location"
+ __name__ = 'party.party.location'
+ party = fields.Many2One(
+ 'party.party', "Party", ondelete='CASCADE', select=True)
+ supplier_location = supplier_location
+ customer_location = customer_location
+
+ @classmethod
+ def __register__(cls, module_name):
+ exist = backend.TableHandler.table_exist(cls._table)
+
+ super().__register__(module_name)
+
+ if not exist:
+ cls._migrate_property([], [], [])
+
+ @classmethod
+ def _migrate_property(cls, field_names, value_names, fields):
+ field_names.extend(['supplier_location', 'customer_location'])
+ value_names.extend(['supplier_location', 'customer_location'])
+ migrate_property(
+ 'party.party', field_names, cls, value_names,
+ parent='party', fields=fields)
+
+ @classmethod
+ def default_supplier_location(cls):
+ pool = Pool()
+ ModelData = pool.get('ir.model.data')
+ try:
+ return ModelData.get_id('stock', 'location_supplier')
+ except KeyError:
+ return None
+
+ @classmethod
+ def default_customer_location(cls):
+ pool = Pool()
+ ModelData = pool.get('ir.model.data')
+ try:
+ return ModelData.get_id('stock', 'location_customer')
+ except KeyError:
+ return None
+
+
+class PartyDeliveredToWarehouse(ModelSQL):
+ "Party Delivered to Warehouse"
+ __name__ = 'party.party-delivered_to-stock.location'
+
+ party = fields.Many2One('party.party', "Party", required=True)
+ location = fields.Many2One(
+ 'stock.location', "Location", required=True, ondelete='CASCADE',
+ domain=[
+ ('type', '=', 'warehouse'),
+ ])
class Address(metaclass=PoolMeta):
@@ -11,6 +124,8 @@
delivery = fields.Boolean(
'Delivery',
help="Check to send deliveries to the address.")
+ warehouses = fields.One2Many(
+ 'stock.location', 'address', "Warehouses", readonly=True)
class ContactMechanism(metaclass=PoolMeta):
diff -r 11631a8664bf -r 9b8ef75eb991 party.xml
--- a/party.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/party.xml Sat Sep 10 18:34:29 2022 +0200
@@ -3,6 +3,12 @@
this repository contains the full copyright notices and license terms. -->
<tryton>
<data>
+ <record model="ir.ui.view" id="party_party_view_form">
+ <field name="model">party.party</field>
+ <field name="inherit" ref="party.party_view_form"/>
+ <field name="name">party_form</field>
+ </record>
+
<record model="ir.ui.view" id="address_view_tree">
<field name="model">party.address</field>
<field name="inherit" ref="party.address_view_tree"/>
diff -r 11631a8664bf -r 9b8ef75eb991 shipment.py
--- a/shipment.py Thu Sep 08 13:19:52 2022 +0200
+++ b/shipment.py Sat Sep 10 18:34:29 2022 +0200
@@ -601,8 +601,14 @@
states={
'readonly': Eval('state') != 'draft',
},
- domain=[
- ('party', '=', Eval('supplier'))
+ domain=['OR',
+ ('party', '=', Eval('supplier')),
+ ('warehouses', 'where', [
+ ('id', '=', Eval('warehouse', -1)),
+ If(Eval('state') == 'draft',
+ ('allow_pickup', '=', True),
+ ()),
+ ]),
],
help="Where the stock is sent to.")
from_location = fields.Many2One('stock.location', "From Location",
@@ -615,6 +621,9 @@
'readonly': (Eval('state') != 'draft') | Eval('moves', [0]),
}, domain=[('type', '=', 'supplier')],
help="Where the stock is moved to.")
+ warehouse = fields.Function(
+ fields.Many2One('stock.location', "Warehouse"),
+ 'on_change_with_warehouse')
moves = fields.One2Many('stock.move', 'shipment', 'Moves',
states={
'readonly': (((Eval('state') != 'draft') | ~Eval('from_location'))
@@ -734,6 +743,11 @@
self.delivery_address = self.supplier.address_get('delivery')
self.to_location = self.supplier.supplier_location
+ @fields.depends('from_location')
+ def on_change_with_warehouse(self, name=None):
+ if self.from_location and self.from_location.warehouse:
+ return self.from_location.warehouse.id
+
@property
def _move_planned_date(self):
'''
@@ -955,7 +969,16 @@
'Delivery Address', required=True,
states={
'readonly': Eval('state') != 'draft',
- }, domain=[('party', '=', Eval('customer'))],
+ },
+ domain=['OR',
+ ('party', '=', Eval('customer')),
+ ('warehouses', 'where', [
+ ('id', '=', Eval('warehouse', -1)),
+ If(Eval('state') == 'draft',
+ ('allow_pickup', '=', True),
+ ()),
+ ]),
+ ],
help="Where the stock is sent to.")
reference = fields.Char("Reference", size=None, select=True,
states={
@@ -1153,11 +1176,14 @@
def default_company():
return Transaction().context.get('company')
- @fields.depends('customer')
+ @fields.depends('customer', 'warehouse')
def on_change_customer(self):
self.delivery_address = None
if self.customer:
- self.delivery_address = self.customer.address_get(type='delivery')
+ with Transaction().set_context(
+ warehouse=self.warehouse.id if self.warehouse else None):
+ self.delivery_address = self.customer.address_get(
+ type='delivery')
@fields.depends('customer')
def on_change_with_customer_location(self, name=None):
@@ -1611,8 +1637,8 @@
help="The party that purchased the stock.")
customer_location = fields.Function(fields.Many2One('stock.location',
'Customer Location'), 'on_change_with_customer_location')
- delivery_address = fields.Many2One('party.address',
- 'Delivery Address', required=True,
+ contact_address = fields.Many2One(
+ 'party.address', "Contact Address",
states={
'readonly': Eval('state') != 'draft',
}, domain=[('party', '=', Eval('customer'))],
@@ -1729,6 +1755,9 @@
if table.column_exist('code'):
table.column_rename('code', 'number')
+ # Migration from 6.4: rename delivery_address to contact_address
+ table.column_rename('delivery_address', 'contact_address')
+
super(ShipmentOutReturn, cls).__register__(module_name)
# Migration from 5.6: rename state cancel to cancelled
@@ -1736,6 +1765,9 @@
[sql_table.state], ['cancelled'],
where=sql_table.state == 'cancel'))
+ # Migration from 6.4: remove required on contact_address
+ table.not_null_action('contact_address', 'remove')
+
@classmethod
def order_effective_date(cls, tables):
table, _ = tables[None]
@@ -1756,9 +1788,9 @@
@fields.depends('customer')
def on_change_customer(self):
- self.delivery_address = None
+ self.contact_address = None
if self.customer:
- self.delivery_address = self.customer.address_get(type='delivery')
+ self.contact_address = self.customer.address_get()
@fields.depends('customer')
def on_change_with_customer_location(self, name=None):
@@ -2736,7 +2768,7 @@
@classmethod
def execute(cls, ids, data):
- with Transaction().set_context(address_with_party=True):
+ with Transaction().set_context(address_with_party=False):
return super(DeliveryNote, cls).execute(ids, data)
diff -r 11631a8664bf -r 9b8ef75eb991 view/location_form.xml
--- a/view/location_form.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/view/location_form.xml Sat Sep 10 18:34:29 2022 +0200
@@ -17,7 +17,9 @@
<newline/>
<label name="address"/>
<field name="address"/>
- <newline/>
+ <label name="allow_pickup"/>
+ <field name="allow_pickup"/>
+
<label name="input_location"/>
<field name="input_location"/>
<newline/>
diff -r 11631a8664bf -r 9b8ef75eb991 view/party_form.xml
--- a/view/party_form.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/view/party_form.xml Sat Sep 10 18:34:29 2022 +0200
@@ -12,6 +12,9 @@
<field name="customer_location"/>
<label name="supplier_location"/>
<field name="supplier_location"/>
+
+ <separator name="delivered_to_warehouses" colspan="4"/>
+ <field name="delivered_to_warehouses" colspan="4"
widget="multiselection"/>
</page>
</xpath>
</data>
diff -r 11631a8664bf -r 9b8ef75eb991 view/shipment_out_return_form.xml
--- a/view/shipment_out_return_form.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/view/shipment_out_return_form.xml Sat Sep 10 18:34:29 2022 +0200
@@ -8,8 +8,8 @@
<field name="number"/>
<label name="customer"/>
<field name="customer"/>
- <label name="delivery_address"/>
- <field name="delivery_address"/>
+ <label name="contact_address"/>
+ <field name="contact_address"/>
<label name="planned_date"/>
<field name="planned_date"/>
<label name="effective_date"/>
diff -r 11631a8664bf -r 9b8ef75eb991 view/shipment_out_return_tree.xml
--- a/view/shipment_out_return_tree.xml Thu Sep 08 13:19:52 2022 +0200
+++ b/view/shipment_out_return_tree.xml Sat Sep 10 18:34:29 2022 +0200
@@ -9,6 +9,6 @@
<field name="effective_date" optional="0"/>
<field name="warehouse" expand="1" optional="0"/>
<field name="customer" expand="2" optional="0"/>
- <field name="delivery_address" optional="1"/>
+ <field name="contact_address" optional="1"/>
<field name="state"/>
</tree>