<?xml version="1.0" encoding="utf-8"?>
<ManualTopic ID="/baanerp/td/onlinemanual/000404" xml:lang="zh-cn">
	<Header>
		<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">同步规则</Title>
		<Keyword ContextSensitive="No"><Level1>同步</Level1>
		</Keyword>
		<Keyword ContextSensitive="No"><Level1>销售订单行</Level1>
		</Keyword>
		<Keyword ContextSensitive="No"><Level1>交货行</Level1>
		</Keyword>
	</Header>
	<AimSection><Paragraph class="Default">销售订单行可以与交货行相链接。</Paragraph>
		<List><ListIntro>销售订单交货行可以是：</ListIntro>
			<ListItem>分割销售订单行。</ListItem>
			<ListItem>延交订单行。</ListItem>
		</List>
		<Paragraph class="Default">对于每个交货行，还可以链接延交订单行。销售订单行保留来自交货行的汇总信息。外部订单行（来自另一个产品的订单行）可以与<GUIRef href="/baanerp/td/sls" role="module">销售控制模块</GUIRef>中的销售订单行相连接。对外部订单行的更改反映在销售订单行中。然后，必须将销售订单行上的已更改字段与交货行同步（如果适用）。换句话说，更改了销售订单行后，必须将更改同步到交货行，反之亦然。如需有关触发同步处理过程的字段的信息，请参阅<Link href="/baanerp/td/onlinemanual/000403" role="manual">销售订单行和交货行之间的同步</Link>
		</Paragraph>
	</AimSection>
	<GeneralSection><SectionTitle>更新销售订单行上的价格和折扣字段</SectionTitle>
		<Paragraph class="Default">如果已对订单行进行最终交货，则不能在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程中更改价格和折扣字段。换句话说，订单行和链接的交货行不能已完全交货。如果某个行已交货，但尚未开发票，则可以使用<GUIRef href="/baanerp/td/sls/tdsls4122m000" role="session">交货后更改价格和折扣 (tdsls4122m000)</GUIRef> 进程来更新销售订单行的价格。但是，交货后，外部订单行不能更新价格。</Paragraph>
	</GeneralSection>
	<GeneralSection><SectionTitle>更新销售订单行上的销售价格单位</SectionTitle>
		<Paragraph class="Default">只能使用外部订单行更改销售价格单位。不能在 ERP LN 中人工更改销售价格单位。此外，如果已对订单行进行最终交货，则不能更改销售价格单位。换句话说，订单行和链接的交货行不能已完全交货。</Paragraph>
	</GeneralSection>
	<GeneralSection><SectionTitle>更新销售订单行上的订货数量</SectionTitle>
		<Paragraph class="Default">如果在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程中更改<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.qoor" role="manual">订货数量 </GUIRef>，ERP LN 会删除所有链接的交货行。这对由 ATP 流程自动创建的交货行和人工创建的交货进度计划生成的交货行都适用。如果一个链接的交货行已经交货或者已经从仓库出库很久，则不能更改订货数量。在这种情况下，必须修改交货行的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.qoor" role="manual" Update="No">订货数量</GUIRef>以执行订货数量更改。如果更改交货行上的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.qoor" role="manual" Update="No">订货数量</GUIRef>，ERP LN 会保存交货进度计划并更改订单行上的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.qoor" role="manual">订货数量 </GUIRef>。</Paragraph>
		<Paragraph class="Default">如果更改外部订单行上的订货数量，则在删除链接的交货行时 ERP LN 不会通知外部订单行。</Paragraph>
		<Note><SectionTitle>
                              注意
                           </SectionTitle>
			<List><ListItem>可以在<GUIRef href="/baanerp/td/sls/tdsls4101m900" role="session">销售订单行交货数据 (tdsls4101m900)</GUIRef> 进程中创建一个新的交货进度计划。</ListItem>
				<ListItem>对于延交订单，订货数量和金额不会与订单行同步。这是因为，（父）交货行已经包含了延交订单行的订货数量。</ListItem>
			</List>
		</Note>
	</GeneralSection>
	<GeneralSection><SectionTitle>更新销售订单行上的销售单位</SectionTitle>
		<Paragraph class="Default">如果<GUIRef href="/baanerp/wh" role="package">仓储管理子系统</GUIRef>尚未处理链接的交货行，则可以更新订单行的销售单位。但是，如果更新订单行的销售单位，ERP LN 会删除尚未处理的交货行。如果需要，必须为更改的销售单位创建新的交货行。</Paragraph>
		<Paragraph class="Default">如果更改外部订单行上的销售单位，则在删除链接的交货行时 ERP LN 不会通知外部订单行。</Paragraph>
	</GeneralSection>
	<GeneralSection><SectionTitle>更新销售订单行上的计划交货日期</SectionTitle>
		<List><ListIntro>在 ERP LN 中，如果<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程中的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.ddta" role="manual">计划交货日期</GUIRef>没有与其链接的交货行，则可以对该日期进行更新。否则，<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.ddta" role="manual">计划交货日期</GUIRef>将处于禁用状态。但是，您可以：</ListIntro>
			<ListItem>在<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程中为链接的交货行更改<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.ddta" role="manual" Update="No">计划交货日期</GUIRef>。交货行的最新计划交货日期将与销售订单行的计划交货日期同步。</ListItem>
			<ListItem>在<GUIRef href="/baanerp/td/sls/tdsls4100m900" role="session">销售订单行 (tdsls4100m900)</GUIRef> 进程中为销售订单页眉更改<GUIRef href="/baanerp/td/sls/tdsls4100m900#tdsls400.ddat" role="manual">计划交货日期</GUIRef>。这样，ERP LN 会更新所有链接的销售订单行的计划交货日期。但是，当 ERP LN 需要更新链接了交货行的销售订单行时，您会收到交货行将被删除的通知。如果希望保留交货行，您可以根据需要取消计划交货日期的更新，然后在交货行上更改计划交货日期。</ListItem>
		</List>
		<Paragraph class="Default">始终可以通过外部订单行来更新销售订单行上的计划交货日期。但是，如果交货行与销售订单行相链接，则在外部订单行更新计划交货日期时将删除交货行。ERP LN 在删除交货行时不会向外部订单行发出通知。</Paragraph>
		<Paragraph class="Default">要首先检查能否更改销售订单行上的计划交货日期，ERP LN 会验证是否已选中<GUIRef href="/baanerp/cp/rpd/cprpd0100m000" role="session">企业计划参数 (cprpd0100m000)</GUIRef> 进程中的<GUIRef href="/baanerp/cp/rpd/cprpd0100m000#cprpd000.atpq" role="manual">用于销售的 CTP 检查（用于 EP 和 OPS）</GUIRef>复选框。如果选中此复选框，
                           ERP LN 将检查是否可在新的计划交货日期提供该物料。如果不能提供所需数量的该物料，则不能更改计划交货日期。如果可以提供该物料，ERP LN 将确定是否存在交货行。</Paragraph>
		<Note><SectionTitle>
                              注意
                           </SectionTitle>
			<List><ListItem>如果链接的交货行已经交货，则无法更改订单行的计划交货日期。因此，对于所有交货行，<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程中的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.dldt" role="manual">交货日期</GUIRef>必须为空。</ListItem>
				<ListItem>如果新的计划交货日期晚于计划收货日期，ERP LN 将使计划交货日期与计划收货日期相同。ERP LN 不会按照定义的提前期重新计算计划收货日期。可以在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 或<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 程中重新计算计划收货日期。</ListItem>
				<ListItem>如果外部订单行更改了计划交货日期但未更改价格，可以重新计算价格字段。另请参见：同步价格字段。</ListItem>
			</List>
		</Note>
	</GeneralSection>
	<GeneralSection><SectionTitle>更新销售订单行上的计划收货日期</SectionTitle>
		<Paragraph class="Default">在 ERP LN 中，如果<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程中的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.prdt" role="manual">计划收货日期</GUIRef>没有与其链接的交货行，则可以对该日期进行更新。否则，<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.prdt" role="manual">计划收货日期</GUIRef>将处于禁用状态。</Paragraph>
		<Paragraph class="Default">始终可以通过外部订单行来更新销售订单行上的计划收货日期。如果交货行与销售订单行链接，则交货行的计划收货日期也会更新。</Paragraph>
		<Note><SectionTitle>
                              注意
                           </SectionTitle>
			<List><ListItem>如果链接的交货行已经交货，则无法更改订单行的计划收货日期。因此，对于所有交货行，<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程中的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.dldt" role="manual">交货日期</GUIRef>必须为空。</ListItem>
				<ListItem>如果新的计划收货日期晚于计划交货日期，ERP LN 将使计划交货日期与计划收货日期相同。ERP LN 不会按照定义的提前期重新计算计划交货日期。可以在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 或<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程中重新计算计划交货日期。但是，如果更改计划收货日期导致更改了计划交货日期，ERP LN 会删除与订单行链接的交货行。另请参见：更新销售订单行上的计划交货日期。</ListItem>
				<ListItem>如果外部订单行更改了计划收货日期但未更改价格，则当计划交货日期也被更改时可以重新计算价格字段。另请参见：同步价格字段。</ListItem>
				<ListItem>交货行的最新计划收货日期与销售订单行的计划收货日期同步。</ListItem>
			</List>
		</Note>
	</GeneralSection>
	<GeneralSection><SectionTitle>同步价格字段</SectionTitle>
		<List><ListIntro>要进行价格同步的最重要字段包括：</ListIntro>
			<ListItem><GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.pric" role="manual">价格</GUIRef>。</ListItem>
			<ListItem><GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.ldam" role="manual">折扣金额</GUIRef>。</ListItem>
			<ListItem><GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.disc" role="manual">折扣百分比</GUIRef>。</ListItem>
		</List>
		<List><ListIntro>同步这些字段后，还会同步下列与价格和折扣相关的字段：</ListIntro>
			<ListItem><GUIRef href="" role="manual">折扣矩阵定义</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">折扣矩阵顺序</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">折扣方法</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">折扣</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">折扣矩阵类型</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">确定</GUIRef>。</ListItem>
			<ListItem><GUIRef href="" role="manual">适用</GUIRef>。</ListItem>
		</List>
		<List><ListIntro>创建订单行后，根据下列项目来确定价格：</ListIntro>
			<ListItem><GUIRef href="/baanerp/td/pcg/tdpcg0100m000" role="session">定价参数 (tdpcg0100m000)</GUIRef> 进程中的<GUIRef href="/baanerp/td/pcg/tdpcg0100m000#tdpcg000.spdt" role="manual">销售价格日期类型</GUIRef>参数。该字段决定是否必须使用订单日期、系统日期或交货日期来计算价格。</ListItem>
			<ListItem>订货数量。</ListItem>
			<ListItem>销售单位。</ListItem>
		</List>
		<Paragraph class="Default">将订单行分割成交货行后，在订单行上确定的价格是所有交货行的默认价格。更改计划交货日期（如果将<GUIRef href="/baanerp/td/pcg/tdpcg0100m000#tdpcg000.spdt" role="manual">销售价格日期类型</GUIRef>参数设置为<GUIRef href="/baanerp/td/domains/pur.pric#delivery.date" role="option">交货日期</GUIRef>）或更改交货行上的订货数量后，ERP LN 会将新值同步到订单行。关闭<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 程后，ERP LN 会询问是否要重新计算价格。然后，会按照销售订单行上的已同步字段重新计算价格。</Paragraph>
		<Paragraph class="Default"></Paragraph>
		<Paragraph class="Default"><Emphasis>根据固定金额确定价格</Emphasis>：</Paragraph>
		<Paragraph class="Default">如果外部订单行没有设置价格，或者您没有在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.pric" role="manual">价格</GUIRef>字段中输入价格，则必须在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls400.oamt" role="manual">订单金额</GUIRef>字段中输入一个金额。该金额对于订单是固定的。此时，计算的价格为每个销售单位的价格。</Paragraph>
		<Paragraph class="Default">当外部订单行传递该金额时，也会传递销售价格单位。此时，该金额按销售价格单位转换为价格。</Paragraph>
		<Paragraph class="Default">
                           ERP LN 将从固定金额计算得到的价格与交货行同步。</Paragraph>
		<Paragraph class="Default"></Paragraph>
		<Paragraph class="Default"><Emphasis>交货后更新价格</Emphasis>
		</Paragraph>
		<Paragraph class="Default">订单行或交货行交货后，就不能再直接更新该行的价格。可以在<GUIRef href="/baanerp/td/sls/tdsls4122m000" role="session">交货后更改价格和折扣 (tdsls4122m000)</GUIRef> 进程中更新已交货但未开发票的行的价格。</Paragraph>
		<List><ListIntro>在<GUIRef href="/baanerp/td/sls/tdsls4122m000" role="session">交货后更改价格和折扣 (tdsls4122m000)</GUIRef> 进程中会显示<GUIRef href="/baanerp/td/sls/tdsls4122m000#updt.sls" role="manual">申请其它顺序。</GUIRef>复选框。此复选框的作用如下：</ListIntro>
			<ListItem>
                              如果选中此复选框，则在该进程中输入的已修改价格或折扣，也会按同一订单和位置的其它行顺序进行更新。跳过已下达到开票的行顺序。</ListItem>
			<ListItem>如果<GUIRef href="/baanerp/td/sls/tdsls4122m000#tdsls401.oltp" role="manual">订单行类型</GUIRef>字段设置为<GUIRef href="/baanerp/td/domains/sls.oltp#total" role="option">订单行</GUIRef>，则该复选框将不可用并处于选中状态。</ListItem>
			<ListItem>
                              如果选中此复选框，并更新<GUIRef href="/baanerp/td/domains/sls.oltp#detail" role="option">订单/交货行</GUIRef>的价格/折扣，则还会更新与<GUIRef href="/baanerp/td/domains/sls.oltp#detail" role="option">订单/交货行</GUIRef>链接的<GUIRef href="/baanerp/td/domains/sls.oltp#backorder" role="option">延交订单</GUIRef>行的价格和折扣字段。但是，如果选中了此复选框，并更新<GUIRef href="/baanerp/td/domains/sls.oltp#backorder" role="option">延交订单</GUIRef>行的价格/折扣，则 ERP LN 会更新与<GUIRef href="/baanerp/td/domains/sls.oltp#backorder" role="option">延交订单</GUIRef>链接的<GUIRef href="/baanerp/td/domains/sls.oltp#backorder" role="option">延交订单</GUIRef>行，但不更新（父）交货行。</ListItem>
		</List>
	</GeneralSection>
	<GeneralSection><SectionTitle>促销</SectionTitle>
		<Paragraph class="Default">促销可以为客户提供促销赠品和其它折扣。</Paragraph>
		<Paragraph class="Default"></Paragraph>
		<Paragraph class="Default"><Emphasis>促销赠品</Emphasis>
		</Paragraph>
		<Paragraph class="Default">如果提供<Link href="/baanerp/td/glossary/glossary#000318" role="glossary">促销赠品</Link>，ERP LN 始终为促销赠品创建一个新的销售订单行。</Paragraph>
		<Paragraph class="Default"></Paragraph>
		<Paragraph class="Default"><Emphasis>促销折扣</Emphasis>
		</Paragraph>
		<Paragraph class="Default">如果在与交货行链接的销售订单行上提供促销折扣，ERP LN 会在<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程中增加<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.tprd" role="manual">促销折扣合计</GUIRef>和减少<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.oamt" role="manual">金额</GUIRef>。但是，始终不能对销售订单行开发票。这是因为，销售订单行被分割为若干顺序，并且仅总数量和金额在该行上可见。不对此销售订单行进行任何财务或后勤事务处理。因此，必须同时在链接的交货行上登记促销折扣。分配给交货行的促销折扣取决于交货行的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.qoor" role="manual" Update="No">订货数量</GUIRef>。分配给交货行的促销折扣反映在<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程的金额中。</Paragraph>
		<ProcedureList><ListIntro>
                              ERP LN 执行下列计算步骤来计算金额：</ListIntro>
			<ListItem>
                              ERP LN 决定交货行的促销折扣。折扣的计算方式为：用<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.oamt" role="manual">金额</GUIRef>除<GUIRef href="/baanerp/td/sls/tdsls4101m000" role="session">销售订单行 (tdsls4101m000)</GUIRef> 进程的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.tprd" role="manual">促销折扣合计</GUIRef>，再乘以<GUIRef href="/baanerp/td/sls/tdsls4101m100" role="session">销售订单交货行 (tdsls4101m100)</GUIRef> 进程的<GUIRef href="/baanerp/td/sls/tdsls4101m100#tdsls401.qoor" role="manual" Update="No">订购数量</GUIRef>。</ListItem>
			<ListItem>
                              ERP LN 决定交货行的金额。计算此金额的公式如下：销售订单交货行的金额减去第一步的结果。</ListItem>
		</ProcedureList>
		<Note><SectionTitle>
                              注意
                           </SectionTitle>
			<Paragraph class="Default">销售订单行保留链接的交货行上汇总的<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.tprd" role="manual">促销折扣合计</GUIRef>和<GUIRef href="/baanerp/td/sls/tdsls4101m000#tdsls401.oamt" role="manual">金额</GUIRef>，这些信息分散在交货行上，但在交货行上不可见。但是，如果将交货行下达到<GUIRef href="/baanerp/ci" role="package">统一开票子系统</GUIRef>，ERP LN 会重新使用交货行的不可见金额，因为不能对销售订单行开发票。</Paragraph>
		</Note>
		<Paragraph class="Default">如果通过 EDI 或外部订单行创建一个销售订单行，则不会自动应用促销。在 ERP LN 中，用户必须人工打开通过 EDI 或外部应用程序创建的销售订单行，并人工分配促销。</Paragraph>
	</GeneralSection>
	<RelatedTopics><SectionTitle>
                           相关主题
                        </SectionTitle>
		<RelTopic><Link href="/baanerp/td/onlinemanual/000403" role="manual">销售订单行和交货行之间的同步</Link>
		</RelTopic>
	</RelatedTopics>
</ManualTopic>
