| | |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Aug-14-2024 (created) |
| | | return '产æå'; |
| | | //return '产æå'; |
| | | return 'å卿º'; |
| | | *] |
| | | } |
| | |
| | | allunit := CCEngineLogisticsCostReport::GetDefaultAllUnit(); |
| | | ccfactory := CCEngineLogisticsCostReport::GetCCFactory(); |
| | | ccunit := CCEngineLogisticsCostReport::GetDefaultCCUnit(); |
| | | ccline := CCEngineLogisticsCostReport::GetStockingPointCCLine(); |
| | | //ccline := CCEngineLogisticsCostReport::GetStockingPointCCLine(); |
| | | ccrent := CCEngineLogisticsCostReport::GetStockingPointCCRent(); |
| | | |
| | | startofplanning := owner.StartOfPlanning().Date(); |
| | |
| | | //å¤ç§åºå
¥åºè´¹ç¨ï¼åèªè´¢å¡äº§éæ¥è¡¨ç产éï¼å¨äº§åè¡¨æ ¹æ®å卿ºå·æ¾å°å¯¹åºçGeneration 忍ªçºµå¶ï¼å¨å卿ºææ¬åæ°è¡¨éæ¾å°å¯¹åºçå
è£
容éåå
¥åºåä»·ï¼ç¨å
¬å¼è®¡ç®ï¼æåº¦è¿è¡æ±æ» |
| | | traverse( owner, FinancialProductionSource, source, not source.IsImport() ){//è´¢å¡äº§éæ¥è¡¨é导å
¥ |
| | | traverse( source, FinancialProductionReport, report, not report.IsShow() ){//è´¢å¡äº§éæ¥è¡¨ä¸æ¾ç¤º |
| | | traverse( report, FinancialProductionRow, row, row.Unit() = ccunit and exists( row, FinancialProductionCell, cell, cell.Value() <> '0' and cell.FinancialProductionColumn().IsDay() ) ){//è´¢å¡äº§éæ¥è¡¨éçé¿æ¥äº§é, ä¸ä¸º0 |
| | | traverse( report, FinancialProductionRow, row, row.Unit() = ccunit and exists( row, FinancialProductionCell, cell, cell.Value() <> '0' and not cell.FinancialProductionColumn().IsDay() ) ){//è´¢å¡äº§éæ¥è¡¨éçé¿æ¥äº§é, ä¸ä¸º0 |
| | | product := row.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | //æ¥è¯¢å¯¹åºçå卿ºææ¬ |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.Generation().ToLower() = product.Generation().ToLower() |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.Generation().ToLower() = product.Generation().ToLower() |
| | | and engine.MLB_MQB() = product.MQBMLB() |
| | | and engine.Factory() = ccfactory );//ccunit |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | | ccrow := table.GetRow( row.Name() ); |
| | | products.Add( product ); |
| | | traverse( row, FinancialProductionCell, cell, cell.Value() <> '0' and cell.FinancialProductionColumn().IsDay() ){ |
| | | traverse( row, FinancialProductionCell, cell, cell.Value() <> '0' and not cell.FinancialProductionColumn().IsDay() ){ |
| | | cellcolumn := cell.FinancialProductionColumn(); |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= cellcolumn.Period() and engine.EndDate() >= cellcolumn.Period() ); |
| | | if( not isnull( enginecost ) ){ |
| | | //å
¥åºé/å
è£
容é*å
¥åºåä»·ï¼å
¥åºéçäºé¿æ¥äº§é |
| | | quantity := ceil( [Number]cell.Value() / enginecost.PackagingCapacity() ) * enginecost.WarehousingPrice(); |
| | | quantity := ceil( cell.Quantity() / enginecost.PackagingCapacity() ) * enginecost.WarehousingPrice(); |
| | | column := selectobject( table, Column, column, column.Name() = cell.FinancialProductionColumn().Name() ); |
| | | //å¤ç§åºå
¥åºè´¹ç¨ |
| | | ccrow.SetRentEnterCost( column, quantity ); |
| | |
| | | //å¤ç§åºåºåºè´¹ç¨ï¼åºåºéçäºé¿æ¥ééï¼åèªè´¢å¡ééæ¥è¡¨çééï¼å¨äº§åè¡¨æ ¹æ®å卿ºå·æ¾å°å¯¹åºçGeneration 忍ªçºµå¶ï¼å¨å卿ºææ¬åæ°è¡¨éæ¾å°å¯¹åºçå
è£
容éååºåºåä»·ï¼ç¨å
¬å¼è®¡ç®ï¼æåº¦è¿è¡æ±æ» |
| | | traverse( owner, FinancialSalesSource, source, not source.IsImport() ){//è´¢å¡ééæ¥è¡¨é导å
¥ |
| | | traverse( source, FinancialSalesReport, report, not report.IsShow() ){//è´¢å¡ééæ¥è¡¨ä¸æ¾ç¤º |
| | | traverse( report, FinancialSalesRow, row, row.Unit() = ccunit and exists( row, FinancialSalesCell, cell, cell.Value() <> '0' and cell.FinancialSalesColumn().IsDay() ) ){//è´¢å¡ééæ¥è¡¨éçé¿æ¥äº§é, ä¸ä¸º0 |
| | | traverse( report, FinancialSalesRow, row, row.Unit() = ccunit and exists( row, FinancialSalesCell, cell, cell.Value() <> '0' and not cell.FinancialSalesColumn().IsDay() ) ){//è´¢å¡ééæ¥è¡¨éçé¿æ¥äº§é, ä¸ä¸º0 |
| | | product := row.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | //æ¥è¯¢å¯¹åºçå卿ºææ¬ |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.Generation().ToLower() = product.Generation().ToLower() |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.Generation().ToLower() = product.Generation().ToLower() |
| | | and engine.MLB_MQB() = product.MQBMLB() |
| | | and engine.Factory() = ccfactory ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | | ccrow := table.GetRow( row.Name() ); |
| | | products.Add( product ); |
| | | traverse( row, FinancialSalesCell, cell, cell.Value() <> '0' and cell.FinancialSalesColumn().IsDay() ){ |
| | | traverse( row, FinancialSalesCell, cell, cell.Value() <> '0' and not cell.FinancialSalesColumn().IsDay() ){ |
| | | cellcolumn := cell.FinancialSalesColumn(); |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= cellcolumn.Period() and engine.EndDate() >= cellcolumn.Period() ); |
| | | if( not isnull( enginecost ) ){ |
| | | //åºåºé/å
è£
容é*åºåºåä»·ï¼å
¥åºéçäºé¿æ¥éé |
| | | quantity := ceil( [Number]cell.Value() / enginecost.PackagingCapacity() ) * enginecost.WarehousingPrice(); |
| | | quantity := ceil( [Number]cell.Value() / enginecost.PackagingCapacity() ) * enginecost.OutboundPrice(); |
| | | column := selectobject( table, Column, column, column.Name() = cell.FinancialSalesColumn().Name() ); |
| | | //å¤ç§åºåºåºè´¹ç¨ |
| | | ccrow.SetRentOutCost( column, quantity ); |
| | |
| | | traverse( owner, Unit.Lane.LaneLeg, laneleg ){ |
| | | //èµ·å§åºåç¹æ¯å¦æ¯é¿æ¥è£
é
çº¿è¾¹åº |
| | | originsp := selectobject( owner, StockingPoint_MP, sp, sp.ID() = laneleg.OriginStockingPointID() ); |
| | | isccspline := table.IsInUnit( originsp, ccline ); |
| | | isccspline := table.IsInUnit( originsp, 'CC åå
åº' ); |
| | | //ç®çå°æ¯å¦æ¯é¿æ¥å¤ç§åº |
| | | destisp := selectobject( owner, StockingPoint_MP, sp, sp.ID() = laneleg.DestinationStockingPointID() ); |
| | | isccrent := table.IsInUnit( destisp, ccrent ); |
| | |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | column := selectobject( table, Column, column, column.Name() = periodname and column.StartDate() = periodtime ); |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.StartDate() <= trip.Arrival().Date() and engine.EndDate() >= trip.Arrival().Date() ); |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.StartDate() <= trip.Arrival().Date() and trans.EndDate() >= trip.Arrival().Date() ); |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.StartDate() <= trip.Arrival().Date() and engine.EndDate() >= trip.Arrival().Date() ); |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.StartDate() <= trip.Arrival().Date() and trans.EndDate() >= trip.Arrival().Date() ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | traverse( trip, ProductInTrip, pit, pit.Quantity() <> 0 ){ |
| | | product := pit.Product_MP(); |
| | |
| | | and engine.MLB_MQB() = product.MQBMLB() |
| | | and engine.Factory() = ccfactory ); |
| | | //å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容é |
| | | transcost := selectobject( transcosts, Elements, trans, trans.Origin() = ccline |
| | | transcost := selectobject( transcosts, Elements, trans, trans.Origin() = 'CC åå
åº' |
| | | and trans.Destination() = ccrent |
| | | and exists( productparents, Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | if( not isnull( enginecost ) and not isnull( transcost ) ){ |
| | |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){////æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | //æ¥è¯¢å¯¹åºçå卿ºææ¬ |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.Generation().ToLower() = product.Generation().ToLower() |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.Generation().ToLower() = product.Generation().ToLower() |
| | | and engine.MLB_MQB() = product.MQBMLB() |
| | | and engine.Factory() = ccfactory ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Aug-14-2024 (created) |
| | | return '产æå'; |
| | | //return '产æå'; |
| | | return 'å卿º'; |
| | | *] |
| | | } |
| | |
| | | //大è¿å¤ç§åºå
¥åºè´¹ç¨ï¼å
¥åºé/å
è£
容é*å
¥åºåä»·ï¼å
¥åºéçäºå¤§è¿å·¥å该产å产éåå»åå¾é¿æ¥(大è¿çé¿æ¥å¤ç§åºï¼çæ°é-newSupply |
| | | traverse( owner, FinancialProductionSource, source, not source.IsImport() ){//è´¢å¡äº§éæ¥è¡¨é导å
¥ |
| | | traverse( source, FinancialProductionReport, report, not report.IsShow() ){//è´¢å¡äº§éæ¥è¡¨ä¸æ¾ç¤º |
| | | traverse( report, FinancialProductionRow, row, row.Unit() = dlunit and exists( row, FinancialProductionCell, cell, cell.Value() <> '0' and cell.FinancialProductionColumn().IsDay() ) ){//è´¢å¡äº§éæ¥è¡¨éç大è¿äº§é, ä¸ä¸º0 |
| | | traverse( report, FinancialProductionRow, row, row.Unit() = dlunit and exists( row, FinancialProductionCell, cell, cell.Value() <> '0' and not cell.FinancialProductionColumn().IsDay() ) ){//è´¢å¡äº§éæ¥è¡¨éç大è¿äº§é, ä¸ä¸º0 |
| | | product := row.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | | products.Add( product ); |
| | | ccrow := table.GetRow( row.Name() ); |
| | | traverse( row, FinancialProductionCell, cell, cell.Value() <> '0' and cell.FinancialProductionColumn().IsDay() ){ |
| | | traverse( row, FinancialProductionCell, cell, cell.Value() <> '0' and not cell.FinancialProductionColumn().IsDay() ){ |
| | | cellcolumn := cell.FinancialProductionColumn(); |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= cellcolumn.Period() and engine.EndDate() >= cellcolumn.Period() ); |
| | | if( not isnull( enginecost ) ){ |
| | |
| | | //大è¿å¤ç§åºåºåºè´¹ç¨ï¼åºåºé/å
è£
容é*åºåºåä»·ï¼åºåºéçäºå¤§è¿å·¥å该产åééåå»åå¾é¿æ¥çæ°é-newSupply, 大è¿åå
åºï¼å¤§è¿å¤ç§åº |
| | | traverse( owner, FinancialSalesSource, source, not source.IsImport() ){//è´¢å¡ééæ¥è¡¨é导å
¥ |
| | | traverse( source, FinancialSalesReport, report, not report.IsShow() ){//è´¢å¡ééæ¥è¡¨ä¸æ¾ç¤º |
| | | traverse( report, FinancialSalesRow, row, row.Unit() = ccunit and exists( row, FinancialSalesCell, cell, cell.Value() <> '0' and cell.FinancialSalesColumn().IsDay() ) ){//è´¢å¡ééæ¥è¡¨éç大è¿äº§é, ä¸ä¸º0 |
| | | traverse( report, FinancialSalesRow, row, row.Unit() = ccunit and exists( row, FinancialSalesCell, cell, cell.Value() <> '0' and not cell.FinancialSalesColumn().IsDay() ) ){//è´¢å¡ééæ¥è¡¨éç大è¿äº§é, ä¸ä¸º0 |
| | | product := row.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | | products.Add( product ); |
| | | ccrow := table.GetRow( row.Name() ); |
| | | traverse( row, FinancialSalesCell, cell, cell.Value() <> '0' and cell.FinancialSalesColumn().IsDay() ){ |
| | | traverse( row, FinancialSalesCell, cell, cell.Value() <> '0' and not cell.FinancialSalesColumn().IsDay() ){ |
| | | cellcolumn := cell.FinancialSalesColumn(); |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= cellcolumn.Period() and engine.EndDate() >= cellcolumn.Period() ); |
| | | if( not isnull( enginecost ) ){ |
| | |
| | | salessegment := forecast.SalesSegment_MP(); |
| | | parentsalessegments := salessegment.GetAllParent(); |
| | | //æ¯å¦å±äºé¿æ¥ |
| | | iscc := salessegment.Name().StartsWith( 'Changechun' ) or exists( parentsalessegments, Elements, psalessegment, psalessegment.Name().StartsWith( 'Changechun' ) ); |
| | | iscc := salessegment.Name().StartsWith( 'Changchun' ) or exists( parentsalessegments, Elements, psalessegment, psalessegment.Name().StartsWith( 'Changchun' ) ); |
| | | if( iscc ){ |
| | | product := forecast.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Aug-14-2024 (created) |
| | | return '产æå'; |
| | | //return '产æå'; |
| | | return 'å卿º'; |
| | | *] |
| | | } |
| | |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | owner.EnginePipelineSource( relflush ); |
| | | //ccunit := EnginePipelineReport::GetDefaultCCUnit(); |
| | | //dlunit := EnginePipelineReport::GetDefaultDLUnit(); |
| | | productparent := EnginePipelineReport::GetDefaultProductParent(); |
| | | //ccalineunit := EnginePipelineReport::GetDefaultCCALineUnit(); |
| | | //dlalienunit := EnginePipelineReport::GetDefaultDLALineUnit() |
| | | //ccmplineunit := EnginePipelineReport::GetDefaultCCMPLineUnit() |
| | | //dlmplineunit := EnginePipelineReport::GetDefaultDLMPLineUnit(); |
| | | //allunit := EnginePipelineReport::GetDefaultAllUnit(); |
| | | source := owner.EnginePipelineSource( relnew, Name := EnginePipelineReport::GetDefaultName() ); |
| | | table := source.Report( relnew, ID := source.Name(), Name := source.Name() ); |
| | | showtable := source.Report( relnew, ID := source.Name() + 'Show', Name := source.Name(), IsShow := true ); |
| | |
| | | endperiod := maxobject( owner, Period_MP, period, not period.IsHistorical() and period.TimeUnit() = Translations::MP_GlobalParameters_Day(), period.StartDate() ); |
| | | |
| | | //çæç产ååºåæ°æ® |
| | | //traverse( owner, StockingPoint_MP, stockingpoint ){ |
| | | traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( 'åå
åº' ) ){ |
| | | // unit := stockingpoint.Unit(); |
| | | // parentunits := unit.GetAllParent(); |
| | | traverse( owner, StockingPoint_MP, stockingpoint ){ |
| | | //æ¯å¦å±äºé¿æ¥å·¥å |
| | | // iscc := unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); |
| | | iscc := stockingpoint.ID().StartsWith( 'CC' ); |
| | | iscc := ( stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( 'é¿æ¥' ) ) and stockingpoint.ID().EndsWith( 'åå
åº' ); |
| | | //æ¯å¦å±äºå¤§è¿å·¥å |
| | | // isdl := unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); |
| | | isdl := stockingpoint.ID().StartsWith( '大è¿' ); |
| | | isdl := ( ( stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '大è¿' ) ) and stockingpoint.ID().EndsWith( 'åå
åº' ) ) or stockingpoint.ID() = '大è¿å¤ç§åº'; |
| | | |
| | | traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() and not pisp.IsSystem() |
| | | and exists( pisp.Product_MP().GetAllParent(), Elements, e, e.ID() = productparent ) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute EndaDate |
| | | { |
| | | #keys: '3[415136.0.1181174808][415136.0.1181174807][415136.0.1181174809]' |
| | | ValueType: Date |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute StartDate |
| | | { |
| | | #keys: '3[415136.0.1181144701][415136.0.1181144700][415136.0.1181144702]' |
| | | ValueType: Date |
| | | } |
| | |
| | | startofendyear := startofplanning.StartOfNextYear() - Duration::Days( 1 ); |
| | | //æ¥è¯¢æ¥æè¿åéè¦å¨è®¡åæ¥æä¹å
|
| | | if( search.StartDate().DateTime() < startofendyear and search.EndDate().DateTime() > startofyear ){ |
| | | table := selectobject( this, InventorySummarySource.InventorySummaryReport, report, not report.IsShow() ); |
| | | allunit := '<All>'; |
| | | table := selectobject( this, InventorySummarySource.InventorySummaryReport, report, not report.IsShow() ); |
| | | allunit := '<All>'; |
| | | //æ¸
空ä¹ååå¨çæ¾ç¤ºæ°æ® |
| | | this.Clear( search.Category(), search.StartDate().DateTime(), search.EndDate().DateTime() ); |
| | | //è¿æ»¤åç产åid |
| | | productids := selectuniquevalues( products, Elements, product, ( search.Generation() = allunit or product.Generation() = search.Generation() ) |
| | | and ( search.MqbMlb() = allunit or product.MQBMLB() = search.MqbMlb() ) |
| | | and ( search.Power() = allunit or product.Power() = search.Power() ), product.ID() ); |
| | | sumrow := this.InventroySummaryRow( relnew, Name := 'SUM', Unit := search.Unit(), RowNr := table.InventroySummaryRow( relsize ) ); |
| | | productids := selectuniquevalues( products, Elements, product, ( search.Generation() = allunit or product.Generation() = search.Generation() ) |
| | | and ( search.MqbMlb() = allunit or product.MQBMLB() = search.MqbMlb() ) |
| | | and ( search.Power() = allunit or product.Power() = search.Power() ), product.ID() ); |
| | | sumrow := this.InventroySummaryRow( relnew, Name := 'SUM', Unit := search.Unit(), RowNr := table.InventroySummaryRow( relsize ) ); |
| | | sumrow.InitializeCell( this ); |
| | | traverse( table, InventroySummaryRow, row, row.Unit() = search.Unit() ){ |
| | | productid := construct( Strings ); |
| | | productid := construct( Strings ); |
| | | productid.Add( row.Name() ); |
| | | |
| | | if( productids.ContainsAll( productid ) ){ |
| | | showrow := this.InventroySummaryRow( relnew, Name := row.Name(), Unit := row.Unit(), RowNr := row.RowNr() ); |
| | | |
| | | traverse( row, InventorySummaryCell, cell, cell.InventorySummaryColumn().TimeUnit() = search.Category() ){ |
| | | column := selectobject( this, InventorySummaryColumn, column, column.Name() = cell.InventorySummaryColumn().Name() ); |
| | | showrow := this.InventroySummaryRow( relnew, Name := row.Name(), Unit := row.Unit(), RowNr := row.RowNr() ); |
| | | traverse( this, InventorySummaryColumn, column ){ |
| | | sumcell := selectobject( column, InventorySummaryCell, c, c.InventroySummaryRow() = sumrow ); |
| | | daycells := selectset( row, InventorySummaryCell, cell, cell.InventorySummaryColumn().TimeUnit() = Translations::MP_GlobalParameters_Day() and |
| | | cell.InventorySummaryColumn().StartDate() >= column.StartDate() and |
| | | cell.InventorySummaryColumn().StartDate() <= column.EndaDate() ); |
| | | |
| | | if( not isnull( column ) ){ |
| | | sumcell := selectobject( column, InventorySummaryCell, c, c.InventroySummaryRow() = sumrow ); |
| | | |
| | | showcell := column.InventorySummaryCell( relnew, EndingInventory := cell.EndingInventory(), MinimumInventory := cell.MinimumInventory(), MaximumInventory := cell.MaximumInventory(), AverageInventory := cell.AverageInventory() ); |
| | | showrow.InventorySummaryCell( relinsert, showcell ); |
| | | sumcell.EndingInventory( sumcell.EndingInventory() + cell.EndingInventory() ); |
| | | sumcell.MinimumInventory( sumcell.MinimumInventory() + cell.MinimumInventory() ); |
| | | sumcell.MaximumInventory( sumcell.MaximumInventory() + cell.MaximumInventory() ); |
| | | sumcell.AverageInventory( sumcell.AverageInventory() + cell.AverageInventory() ); |
| | | } |
| | | endinginventory := maxobject( daycells, Elements, e, e.InventorySummaryColumn().StartDate() ).EndingInventory(); |
| | | minimuminventory := min( daycells, Elements, e, e.MinimumInventory() ); |
| | | maximuminventory := max( daycells, Elements, e, e.MaximumInventory() ); |
| | | averageinventory := [Number]average( daycells, Elements, e, e.AverageInventory() ); |
| | | |
| | | showcell := column.InventorySummaryCell( relnew, EndingInventory := endinginventory, MinimumInventory := minimuminventory, MaximumInventory := maximuminventory, AverageInventory := averageinventory ); |
| | | showrow.InventorySummaryCell( relinsert, showcell ); |
| | | |
| | | sumcell.EndingInventory( sumcell.EndingInventory() + endinginventory ); |
| | | sumcell.MinimumInventory( sumcell.MinimumInventory() + minimuminventory ); |
| | | sumcell.MaximumInventory( sumcell.MaximumInventory() + maximuminventory); |
| | | sumcell.AverageInventory( sumcell.AverageInventory() + averageinventory ); |
| | | } |
| | | } |
| | | } |
| | |
| | | //æ¥è¯¢æ¥æè¿åéè¦å¨è®¡åæ¥æä¹å
|
| | | if( starttime < startofendyear and endtime > startofyear ){ |
| | | if( starttime < startofyear ){ |
| | | starttime := startofyear; |
| | | starttime := startofyear; |
| | | } |
| | | if( endtime > startofendyear ){ |
| | | endtime := startofendyear; |
| | | endtime := startofendyear; |
| | | } |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextDay() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Day() ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | if( timeunit = Translations::MP_GlobalParameters_Day() ){ |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextDay() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | this.InventorySummaryColumn( relnew, Name := periodname, StartDate := periodtime, EndaDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){ |
| | | weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date(); |
| | | }else if( timeunit = Translations::MP_GlobalParameters_Week() ){ |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextWeek() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | weekend := ( start.StartOfNextWeek() - Duration::Days( 1 ) ).Date(); |
| | | |
| | | if( periodtime = weekend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | } |
| | | this.InventorySummaryColumn( relnew, Name := periodname, StartDate := periodtime, EndaDate := weekend, TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | } |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Month() ){ |
| | | monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date(); |
| | | }else if( timeunit = Translations::MP_GlobalParameters_Month() ){ |
| | | for( start := starttime; start <= endtime; start := start.StartOfNextMonth() ){ |
| | | periodtime := start.Date(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | monthend := ( start.StartOfNextMonth() - Duration::Days( 1 ) ).Date(); |
| | | |
| | | if( periodtime = monthend ){ |
| | | this.InventorySummaryColumn( relnew, Name := periodname, Period := periodtime, TimeUnit := Translations::MP_GlobalParameters_Month() ); |
| | | } |
| | | this.InventorySummaryColumn( relnew, Name := periodname, StartDate := periodtime, EndaDate := monthend, TimeUnit := Translations::MP_GlobalParameters_Month() ); |
| | | } |
| | | } |
| | | } |
| | |
| | | allunit := InventorySummaryReport::GetDefaultAllUnit(); |
| | | ccunit := InventorySummaryReport::GetDefaultCCUnit(); |
| | | dlunit := InventorySummaryReport::GetDefaultDLUnit(); |
| | | //ccalineunit := FinancialProductionReport::GetDefaultCCALineUnit(); |
| | | //dlalienunit := FinancialProductionReport::GetDefaultDLALineUnit() |
| | | //ccmplineunit := FinancialProductionReport::GetDefaultCCMPLineUnit() |
| | | //dlmplineunit := FinancialProductionReport::GetDefaultDLMPLineUnit(); |
| | | |
| | | source := owner.InventorySummarySource( relnew, ID := InventorySummaryReport::GetDefaultName(), Name := InventorySummaryReport::GetDefaultName() ); |
| | | table := source.InventorySummaryReport( relnew, ID := source.Name(), Name := source.Name() ); |
| | | showtable := source.InventorySummaryReport( relnew, ID := source.Name() + 'Show', Name := source.Name(), IsShow := true ); |
| | | startofplanning := owner.StartOfPlanning(); |
| | | startofyear := startofplanning.StartOfYear() - Duration::Days( 1 ); |
| | | startofnextyear := startofplanning.StartOfNextYear() - Duration::Days( 1 ); |
| | | startofnextyear := startofplanning.StartOfNextYear(); |
| | | |
| | | search := owner.InventorySummarySearch( relnew, Unit := allunit, Generation := allunit, MqbMlb := allunit, Power := allunit, Category := Translations::MP_GlobalParameters_Day(), StartDate := Date::MinDate(), EndDate := Date::MaxDate() ); |
| | | |
| | | table.GenerateColumn( owner, 'All', startofyear, startofnextyear ); |
| | | //info( '-----------------------------------', table.InventorySummaryColumn( relsize ) ); |
| | | //åºåæ°é为Actual inventorieséé¢çç¹Planned inventoriesåæ®µåºåéå æ» |
| | | traverse( owner, StockingPoint_MP, stockingpoint ){ |
| | | //traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( 'åå
åº' ) ){ |
| | | unit := stockingpoint.Unit(); |
| | | parentunits := unit.GetAllParent(); |
| | | //æ¯å¦å±äºé¿æ¥å·¥å |
| | | // iscc := stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID() = 'é¿æ¥' ;//unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); |
| | | iscc := exists( parentunits, Elements, punit, punit.ID().StartsWith( 'VWED CC' ) ); |
| | | //æ¯å¦å±äºå¤§è¿å·¥å |
| | | // isdl := stockingpoint.ID().StartsWith( '大è¿' );//unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); |
| | | isdl := exists( parentunits, Elements, punit, punit.ID().StartsWith( 'VWED DL' ) ); |
| | | if( iscc or isdl ){ |
| | | traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() ){ |
| | |
| | | factoryrow := table.GetRow( ifexpr( iscc, ccunit, dlunit ), pisp.ProductID() ); |
| | | //è·ååè®¡è¡ |
| | | allrow := table.GetRow( allunit, pisp.ProductID() ); |
| | | //å¨åº¦çæ°æ® |
| | | weekpispips := construct( ProductInStockingPointInPeriods ); |
| | | //æåº¦çæ°æ® |
| | | monthpispips := construct( ProductInStockingPointInPeriods ); |
| | | nextweek := startofplanning.StartOfNextWeek(); |
| | | nextmonth := startofplanning.StartOfNextMonth(); |
| | | |
| | | pispips := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, pispip.Start() < startofnextyear |
| | | and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() ); |
| | |
| | | quantity := ifexpr( pispip.Period_MP().IsHistorical(), [Number]pispip.ActualInventoryLevelEnd(), [Number]pispip.PlannedInventoryLevelEnd() ); |
| | | factoryrow.SetCellValue( daycolumn, quantity ); |
| | | allrow.SetCellValue( daycolumn, quantity ); |
| | | |
| | | //å¨ï¼éæ©å¨æ¶ï¼ææ«åºå为æ¯ä¸å¨æåä¸å¤©çæ±æ»åºåä¿¡æ¯ï¼æå°åºå为è¿ä¸å¨åºåéæå°çä¸å¤©çæ°å¼ï¼æå¤§åºå为è¿ä¸å¨åºåéæå¤§çä¸å¤©çæ°å¼ï¼å¹³ååºå为该å¨çå¹³åå¼ |
| | | if( period.Start() < nextweek ){ |
| | | weekpispips.Add( pispip ); |
| | | |
| | | weekend := nextweek - Duration::Days( 1 ); |
| | | if( period.Start() = weekend ){ |
| | | weekcolumn := selectobject( table, InventorySummaryColumn, column, column.Name() = periodname, column.Period() = periodtime, column.TimeUnit() = Translations::MP_GlobalParameters_Week() ); |
| | | |
| | | maxinventory := max( weekpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | mininventory := min( weekpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | aveinventory := average( weekpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | factoryrow.SetCellValue( weekcolumn, quantity, mininventory, maxinventory, [Number]aveinventory ); |
| | | allrow.SetCellValue( weekcolumn, quantity, mininventory, maxinventory, [Number]aveinventory ); |
| | | } |
| | | }else{ |
| | | weekpispips.Flush(); |
| | | weekpispips.Add( pispip ); |
| | | nextweek := nextweek.StartOfNextWeek(); |
| | | } |
| | | |
| | | //æï¼éæ©ææ¶ï¼ææ«åºå为æ¯ä¸ææåä¸å¤©çæ±æ»åºåä¿¡æ¯ï¼æå°åºå为è¿ä¸ä¸ªæåºåéæå°çä¸å¤©çæ°å¼ï¼æå¤§åºå为è¿ä¸ä¸ªæåºåéæå¤§çä¸å¤©çæ°å¼ï¼å¹³ååºå为该æçå¹³åå¼ |
| | | if( period.Start() < nextmonth ){ |
| | | monthpispips.Add( pispip ); |
| | | |
| | | monthend := nextmonth - Duration::Days( 1 ); |
| | | if( period.Start() = monthend ){ |
| | | monthcolumn := selectobject( table, InventorySummaryColumn, column, column.Name() = periodname, column.Period() = periodtime, column.TimeUnit() = Translations::MP_GlobalParameters_Month() ); |
| | | |
| | | maxinventory := max( monthpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | mininventory := min( monthpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | aveinventory := average( monthpispips, Elements, e, ifexpr( pispip.Period_MP().IsHistorical(), [Number]e.ActualInventoryLevelEnd(), [Number]e.PlannedInventoryLevelEnd() ) ); |
| | | factoryrow.SetCellValue( monthcolumn, quantity, mininventory, maxinventory, [Number]aveinventory ); |
| | | allrow.SetCellValue( monthcolumn, quantity, mininventory, maxinventory, [Number]aveinventory ); |
| | | } |
| | | }else{ |
| | | monthpispips.Flush(); |
| | | monthpispips.Add( pispip ); |
| | | nextmonth := nextmonth.StartOfNextMonth(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //é¦å
å¨Entitieséè¯å«ç¶çº§Unitä¸ºé¿æ¥/大è¿çææåºåç¹ |
| | | //é¿æ¥åºåç¹ |
| | | ccsps := construct( Strings ); |
| | | ccsps := construct( Strings ); |
| | | //大è¿åºåç¹ |
| | | dlsps := construct( Strings ); |
| | | allsps := construct( Strings ); |
| | | dlsps := construct( Strings ); |
| | | allsps := construct( Strings ); |
| | | traverse( owner, Unit, unit, unit.ID() = ccunit or unit.ID() = dlunit ){ |
| | | if( unit.ID() = ccunit ){ |
| | | ccsps := selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ); |
| | | ccsps := selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ); |
| | | } |
| | | if( unit.ID() = dlunit ){ |
| | | dlsps := selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ); |
| | | dlsps := selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ); |
| | | } |
| | | allsps := allsps.Union( selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ) ); |
| | | allsps := allsps.Union( selectuniquevalues( unit, StockingPoint_MP, sp, sp.ID() ) ); |
| | | } |
| | | //åå¨åºåæ´æ°çåçé¢åºåç¹éæ©ä¸æ¾å°è¿äºåºåç¹æå
³èçå·²å¾éåºä½ |
| | | selections := selectset( interface, InventoryPointSelection, selection, allsps.Find( selection.StockpoingPoint() ) >= 0 and selection.IsIncluded() ); |
| | | productids := selectuniquevalues( selections, Elements, selection, selection.ProductID() ); |
| | | selections := selectset( interface, InventoryPointSelection, selection, allsps.Find( selection.StockpoingPoint() ) >= 0 and selection.IsIncluded() ); |
| | | productids := selectuniquevalues( selections, Elements, selection, selection.ProductID() ); |
| | | //æåå°è¿äºåºä½ä¸é¶ä»¶å·çæ°éè¿è¡å æ» |
| | | traverse( table, InventorySummaryColumn, column, column.Period() < startofplanning.Date() ){ |
| | | traverse( table, InventorySummaryColumn, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.Period() < startofplanning.Date() ){ |
| | | traverse( productids, Elements, productid ){ |
| | | if( column.TimeUnit() = Translations::MP_GlobalParameters_Day() ){//天 |
| | | column.GenerateCell( selections, ccsps, dlsps, table, column.Period(), column.Period(), productid, allunit, ccunit, dlunit ); |
| | | }else if( column.TimeUnit() = Translations::MP_GlobalParameters_Week() ){//å¨ |
| | | column.GenerateCell( selections, ccsps, dlsps, table, column.Period().StartOfWeek(), column.Period(), productid, allunit, ccunit, dlunit ); |
| | | }else if( column.TimeUnit() = Translations::MP_GlobalParameters_Month() ){//æ |
| | | column.GenerateCell( selections, ccsps, dlsps, table, column.Period().StartOfMonth(), column.Period(), productid, allunit, ccunit, dlunit ); |
| | | } |
| | | column.GenerateCell( selections, ccsps, dlsps, table, column.Period(), column.Period(), productid, allunit, ccunit, dlunit ); |
| | | } |
| | | } |
| | | |
| | | |
| | | rows := selectsortedset( table, InventroySummaryRow, row, row.Name() ); |
| | | i := 0; |
| | | rows := selectsortedset( table, InventroySummaryRow, row, row.Name() ); |
| | | i := 0; |
| | | traverse( rows, Elements, e ){ |
| | | if( exists( e, InventorySummaryCell, cell, cell.AverageInventory() <> 0 or cell.EndingInventory() <> 0 or cell.MaximumInventory() <> 0 or cell.MinimumInventory() <> 0 ) ){ |
| | | e.RowNr( i ); |
| | | i := i + 1; |
| | | i := i + 1; |
| | | }else{ |
| | | e.Delete(); |
| | | } |
| | |
| | | periodtime := period.StartDate(); |
| | | periodname := periodtime.Format( "M2/D2/Y" ); |
| | | |
| | | this.Column( relnew, Name := periodname, StartDate := periodtime, EndDate := periodtime, CCAssemblyPlanQty := 0, DLAssemblyPlanQty := 0, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | this.Column( relnew, Name := periodname, StartDate := periodtime, EndDate := periodtime, TimeUnit := Translations::MP_GlobalParameters_Day() ); |
| | | } |
| | | |
| | | if( timeunit = 'All' or timeunit = Translations::MP_GlobalParameters_Week() ){ |
| | | if( period.StartDate() = weekstart ){ |
| | | weekperiodname := weekstart.Format( "M2/D2/Y" ); |
| | | this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart + Duration::Days( 6 ) ).Date(), CCAssemblyPlanQty := 0, DLAssemblyPlanQty := 0, TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | this.Column( relnew, Name := weekperiodname, StartDate := weekstart, EndDate := ( weekstart + Duration::Days( 6 ) ).Date(), TimeUnit := Translations::MP_GlobalParameters_Week() ); |
| | | weekstart := ( weekstart + Duration::Days( 7 ) ).Date(); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method SetAssemblyPlanValue ( |
| | | MachiningPipelineColumn column, |
| | | Boolean iscc, |
| | | Real quantity |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | cell := selectobject( this, Cell, cell, cell.Column() = column ); |
| | | |
| | | if( iscc ){ |
| | | cell.CCAssemblyPlanQty( cell.CCAssemblyPlanQty() + quantity ); |
| | | } else { |
| | | cell.DLAssemblyPlanQty( cell.DLAssemblyPlanQty() + quantity ); |
| | | } |
| | | *] |
| | | } |
| | |
| | | pispips := selectsortedset( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() |
| | | and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 or pispip.DependentDemandAndSalesDemandQuantity() <> 0 ), pispip.Start() ); |
| | | traverse( pispips, Elements, pispip ){ |
| | | supplyquantity := [Number]pispip.NewSupplyQuantity();//åèäºå
¥ |
| | | products.Add( pisp.Product_MP() ); |
| | | |
| | | //天 |
| | | daycolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Day(), pispip.Start().Date() ); |
| | | //å¨ |
| | | weekcolumn := table.GetColumnByUnit( Translations::MP_GlobalParameters_Week(), pispip.Start().Date() ); |
| | | |
| | | product := pisp.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | row := table.GetRow( pisp.ProductID() ); |
| | | |
| | | //è£
é
线 |
| | | if( isccassemnly or isdlassemnly ){ |
| | | quantity := [Number]pispip.DependentDemandAndSalesDemandQuantity();//åèäºå
¥ |
| | | if( isccassemnly ){ |
| | | daycolumn.CCAssemblyPlanQty( daycolumn.CCAssemblyPlanQty() + quantity ); |
| | | weekcolumn.CCAssemblyPlanQty( weekcolumn.CCAssemblyPlanQty() + quantity ); |
| | | } else { |
| | | daycolumn.DLAssemblyPlanQty( daycolumn.DLAssemblyPlanQty() + quantity ); |
| | | weekcolumn.DLAssemblyPlanQty( weekcolumn.DLAssemblyPlanQty() + quantity ); |
| | | } |
| | | row.SetCellProductionValue( daycolumn, isccassemnly, [Real]quantity ); |
| | | row.SetCellProductionValue( weekcolumn, isccassemnly, [Real]quantity ); |
| | | } |
| | | |
| | | //æºå 线 |
| | | if( isccproduction or isdlproduction ){ |
| | | supplyqty := [Number]pispip.NewSupplyQuantity();//åèäºå
¥ |
| | | row.SetCellProductionValue( daycolumn, isccproduction, [Real]supplyqty ); |
| | | row.SetCellProductionValue( weekcolumn, isccproduction, [Real]supplyqty ); |
| | | } |
| | | |
| | | product := pisp.Product_MP(); |
| | | productparents := product.GetAllParent(); |
| | | if( exists( productparents, Elements, e, e.ID() = productparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | row := table.GetRow( pisp.ProductID() ); |
| | | products.Add( pisp.Product_MP() ); |
| | | |
| | | inventoryquantity:= [Number]pispip.PlannedInventoryLevelEnd();//åèäºå
¥ |
| | | |
| | | //æºå 线 |
| | | if( isccproduction or isdlproduction ){ |
| | | row.SetCellProductionValue( daycolumn, isccproduction, [Real]supplyquantity ); |
| | | row.SetCellProductionValue( weekcolumn, isccproduction, [Real]supplyquantity ); |
| | | } |
| | | //åºå |
| | | if( iscc or isdl ){ |
| | | row.SetCellInventoryValue( daycolumn, iscc, [Real]inventoryquantity ); |
| | | if( weekcolumn.EndDate() = pispip.Start().Date() or pispip.Period_MP() = endperiod ){ |
| | | row.SetCellInventoryValue( weekcolumn, iscc, [Real]inventoryquantity ); |
| | | } |
| | | //åºå |
| | | if( iscc or isdl ){ |
| | | inventoryqty := [Number]pispip.PlannedInventoryLevelEnd();//åèäºå
¥ |
| | | row.SetCellInventoryValue( daycolumn, iscc, [Real]inventoryqty ); |
| | | if( weekcolumn.EndDate() = pispip.Start().Date() or pispip.Period_MP() = endperiod ){ |
| | | row.SetCellInventoryValue( weekcolumn, iscc, [Real]inventoryqty ); |
| | | } |
| | | } |
| | | } |
| | |
| | | i := 0; |
| | | traverse( rows, Elements, e ){ |
| | | e.RowNr( i ); |
| | | traverse( e, Cell, cell ){ |
| | | cell.CCAssemblyPlanQty( cell.Column().CCAssemblyPlanQty() ); |
| | | cell.DLAssemblyPlanQty( cell.Column().DLAssemblyPlanQty() ); |
| | | } |
| | | i := i + 1; |
| | | } |
| | | showtable.Generate( search, products ); |
| | |
| | | |
| | | DataHolderTable.Data( table ); |
| | | |
| | | dhSearch.Data( MacroPlan.EnginePipelineSearch() ); |
| | | //dhSearch.Data( MacroPlan.EnginePipelineSearch() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | |
| | | DataHolderTable.Data( table ); |
| | | |
| | | dhSearch.Data( MacroPlan.MachiningPipelineSearch() ); |
| | | //dhSearch.Data( MacroPlan.MachiningPipelineSearch() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |