库存汇总报表查询条件格式修改,发动机物流成本报表系数,汇总添加
已重命名2个文件
已添加49个文件
已修改49个文件
已删除14个文件
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation Factory_MacroPlan_MacroPlan_Factory |
| | | { |
| | | #keys: '1[415136.0.1188465634]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.1188465636][415136.0.1188465635][415136.0.1188465637]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: Factory |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide Factory |
| | | { |
| | | #keys: '3[415136.0.1188465639][415136.0.1188465638][415136.0.1188465640]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ProductGeneration_MacroPlan_MacroPlan_ProductGeneration |
| | | { |
| | | #keys: '1[415136.0.1188500009]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.1188500011][415136.0.1188500010][415136.0.1188500012]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ProductGeneration |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ProductGeneration |
| | | { |
| | | #keys: '3[415136.0.1188500014][415136.0.1188500013][415136.0.1188500015]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ProductMLBMQB_MacroPlan_MacroPlan_ProductMLBMQB |
| | | { |
| | | #keys: '1[415136.0.1188500048]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.1188500050][415136.0.1188500049][415136.0.1188500051]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ProductMLBMQB |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ProductMLBMQB |
| | | { |
| | | #keys: '3[415136.0.1188500053][415136.0.1188500052][415136.0.1188500054]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Relation ProductPower_MacroPlan_MacroPlan_ProductPower |
| | | { |
| | | #keys: '1[415136.0.1188465592]' |
| | | DefaultRelationStrategy |
| | | { |
| | | } |
| | | RelationSide.LeftSide MacroPlan |
| | | { |
| | | #keys: '3[415136.0.1188465594][415136.0.1188465593][415136.0.1188465595]' |
| | | Cardinality: '0to1' |
| | | ObjectDefinition: ProductPower |
| | | OwningSide: 'Reference' |
| | | } |
| | | RelationSide.RightSide ProductPower |
| | | { |
| | | #keys: '3[415136.0.1188465597][415136.0.1188465596][415136.0.1188465598]' |
| | | Cardinality: '1toN' |
| | | ObjectDefinition: MacroPlan |
| | | OwningSide: 'Owned' |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CoefficientValue |
| | | { |
| | | #keys: '3[415136.0.1188511347][415136.0.1188511346][415136.0.1188511348]' |
| | | Description: 'ç³»æ°' |
| | | ValueType: String |
| | | } |
| | |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Aug-12-2024 (created) |
| | | value := this.EstimateTotalCost() * this.Coefficient(); |
| | | value := this.EstimateTotalCost() * [Real]this.CoefficientValue(); |
| | | |
| | | this.AllCost( value ); |
| | | *] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute CoefficientValue |
| | | { |
| | | #keys: '3[415136.0.1188511356][415136.0.1188511355][415136.0.1188511357]' |
| | | Description: 'ç³»æ°' |
| | | ValueType: String |
| | | } |
| | |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Aug-12-2024 (created) |
| | | value := this.EstimateTotalCost() * this.Coefficient(); |
| | | value := this.EstimateTotalCost() * [Real]this.CoefficientValue(); |
| | | |
| | | this.AllCost( value ); |
| | | *] |
| | |
| | | allunit := '<All>'; |
| | | //æ¸
空ä¹ååå¨çæ¾ç¤ºæ°æ® |
| | | this.Clear(); |
| | | //å¹´æ±æ» |
| | | yearcolumn := this.Column( relnew, Name := 'æ±æ»', StartDate := search.MacroPlan().StartOfPlanning().StartOfNextYear().Date() ); |
| | | //è¿æ»¤åç产å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.Row( relnew, Name := 'SUM', RowNr := table.Row( relsize ) ); |
| | | sumyearcell := sumrow.Initialize( yearcolumn ); |
| | | traverse( table, Row, row ){ |
| | | productid := construct( Strings ); |
| | | productid.Add( row.Name() ); |
| | | |
| | | if( productids.ContainsAll( productid ) ){ |
| | | showrow := this.Row( relnew, Name := row.Name(), RowNr := row.RowNr() ); |
| | | yearcell := showrow.Initialize( yearcolumn ); |
| | | |
| | | traverse( row, Cell, cell ){ |
| | | column := selectobject( this, Column, column, column.Name() = cell.Column().Name() ); |
| | | |
| | | sumcell := selectobject( column, Cell, c, c.Row() = sumrow ); |
| | | if( isnull( sumcell ) ){ |
| | | sumcell := sumrow.Cell( relnew, RentInCost := 0 |
| | | , RentOutOfCost := 0 |
| | | , WerkToRentTransCost := 0 |
| | | , RentStorCost := 0 ); |
| | | column.Cell( relinsert, sumcell ); |
| | | sumcell := sumrow.Initialize( column ); |
| | | } |
| | | |
| | | //æ¾ç¤ºæåå
æ ¼ |
| | | showcell := showrow.Cell( relnew, RentInCost := cell.RentInCost(), RentOutOfCost := cell.RentOutOfCost(), WerkToRentTransCost := cell.WerkToRentTransCost(), RentStorCost := cell.RentStorCost() ); |
| | | column.Cell( relinsert, showcell ); |
| | | //æ¾ç¤ºå¹´åå
æ ¼ |
| | | yearcell.RentInCost( cell.RentInCost() + yearcell.RentInCost() ); |
| | | yearcell.RentOutOfCost( cell.RentOutOfCost() + yearcell.RentOutOfCost() ); |
| | | yearcell.WerkToRentTransCost( cell.WerkToRentTransCost() + yearcell.WerkToRentTransCost() ); |
| | | yearcell.RentStorCost( cell.RentStorCost() + yearcell.RentStorCost() ); |
| | | //æ¾ç¤ºå计年åå
æ ¼ |
| | | sumyearcell.RentInCost( cell.RentInCost() + sumyearcell.RentInCost() ); |
| | | sumyearcell.RentOutOfCost( cell.RentOutOfCost() + sumyearcell.RentOutOfCost() ); |
| | | sumyearcell.WerkToRentTransCost( cell.WerkToRentTransCost() + sumyearcell.WerkToRentTransCost() ); |
| | | sumyearcell.RentStorCost( cell.RentStorCost() + sumyearcell.RentStorCost() ); |
| | | //æ¾ç¤ºå计æåå
æ ¼ |
| | | sumcell.RentInCost( cell.RentInCost() + sumcell.RentInCost() ); |
| | | sumcell.RentOutOfCost( cell.RentOutOfCost() + sumcell.RentOutOfCost() ); |
| | | sumcell.WerkToRentTransCost( cell.WerkToRentTransCost() + sumcell.WerkToRentTransCost() ); |
| | |
| | | columnelement.AppendChild( estimatedtotalcostcellElement ); |
| | | //ç³»æ° |
| | | coefficientcellElement := xmlDOM.CreateElement( "cell" ); |
| | | coefficientcellElement.SetAttribute( "value", c.Coefficient().Format( 'N(Dec)' ) ); |
| | | coefficientcellElement.SetAttribute( "value", c.CoefficientValue() ); |
| | | columnelement.AppendChild( coefficientcellElement ); |
| | | //æ»è´¹ç¨ |
| | | totalcostcellElement := xmlDOM.CreateElement( "cell" ); |
| | |
| | | // cell.EstimatedTotalCost( [Number]valuecell.Value() ); |
| | | // } |
| | | else if( attricell.Value() = 'ç³»æ°' ){ |
| | | cell.Coefficient( [Number]valuecell.Value() ); |
| | | cell.CoefficientValue( valuecell.Value() ); |
| | | } |
| | | // else if( attricell.Value() = 'æ»è´¹ç¨' ){ |
| | | // cell.TotalCost( [Number]valuecell.Value() ); |
| | |
| | | allunit := '<All>'; |
| | | //æ¸
空ä¹ååå¨çæ¾ç¤ºæ°æ® |
| | | this.Clear(); |
| | | //å¹´æ±æ» |
| | | yearcolumn := this.Column( relnew, Name := 'æ±æ»', StartDate := search.MacroPlan().StartOfPlanning().StartOfNextYear().Date() ); |
| | | //è¿æ»¤åç产å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.Row( relnew, Name := 'SUM', RowNr := table.Row( relsize ) ); |
| | | sumyearcell := sumrow.Initialize( yearcolumn ); |
| | | traverse( table, Row, row ){ |
| | | productid := construct( Strings ); |
| | | productid.Add( row.Name() ); |
| | | |
| | | if( productids.ContainsAll( productid ) ){ |
| | | showrow := this.Row( relnew, Name := row.Name(), RowNr := row.RowNr() ); |
| | | yearcell := showrow.Initialize( yearcolumn ); |
| | | |
| | | traverse( row, Cell, cell ){ |
| | | column := selectobject( this, Column, column, column.Name() = cell.Column().Name() ); |
| | | |
| | | sumcell := selectobject( column, Cell, c, c.Row() = sumrow ); |
| | | if( isnull( sumcell ) ){ |
| | | sumcell := sumrow.Cell( relnew, CCRentInCost := 0 |
| | | , CCRentOutOfCost := 0 |
| | | , CCLongTransCost := 0 |
| | | , CCShorTransCost := 0 |
| | | , CCRentStorCost := 0 |
| | | , DLRentInCost := 0 |
| | | , DLRentOutOfCost := 0 |
| | | , WerkToDLRentTransCost := 0 |
| | | , DLRentStorCost := 0 ); |
| | | column.Cell( relinsert, sumcell ); |
| | | sumcell := sumrow.Initialize( column ); |
| | | } |
| | | |
| | | //æ¾ç¤ºæåå
æ ¼ |
| | | showcell := showrow.Cell( relnew, CCRentInCost := cell.CCRentInCost() |
| | | , CCRentOutOfCost := cell.CCRentOutOfCost() |
| | | , CCLongTransCost := cell.CCLongTransCost() |
| | |
| | | , WerkToDLRentTransCost := cell.WerkToDLRentTransCost() |
| | | , DLRentStorCost := cell.DLRentStorCost() ); |
| | | column.Cell( relinsert, showcell ); |
| | | //æ¾ç¤ºå¹´åå
æ ¼ |
| | | yearcell.CCRentInCost( cell.CCRentInCost() + yearcell.CCRentInCost() ); |
| | | yearcell.CCRentOutOfCost( cell.CCRentOutOfCost() + yearcell.CCRentOutOfCost() ); |
| | | yearcell.CCLongTransCost( cell.CCLongTransCost() + yearcell.CCLongTransCost() ); |
| | | yearcell.CCShorTransCost( cell.CCShorTransCost() + yearcell.CCShorTransCost() ); |
| | | yearcell.CCRentStorCost( cell.CCRentStorCost() + yearcell.CCRentStorCost() ); |
| | | yearcell.DLRentInCost( cell.DLRentInCost() + yearcell.DLRentInCost() ); |
| | | yearcell.DLRentOutOfCost( cell.DLRentOutOfCost() + yearcell.DLRentOutOfCost() ); |
| | | yearcell.WerkToDLRentTransCost( cell.WerkToDLRentTransCost() + yearcell.WerkToDLRentTransCost() ); |
| | | yearcell.DLRentStorCost( cell.DLRentStorCost() + yearcell.DLRentStorCost() ); |
| | | //æ¾ç¤ºå计年åå
æ ¼ |
| | | sumyearcell.CCRentInCost( cell.CCRentInCost() + sumyearcell.CCRentInCost() ); |
| | | sumyearcell.CCRentOutOfCost( cell.CCRentOutOfCost() + sumyearcell.CCRentOutOfCost() ); |
| | | sumyearcell.CCLongTransCost( cell.CCLongTransCost() + sumyearcell.CCLongTransCost() ); |
| | | sumyearcell.CCShorTransCost( cell.CCShorTransCost() + sumyearcell.CCShorTransCost() ); |
| | | sumyearcell.CCRentStorCost( cell.CCRentStorCost() + sumyearcell.CCRentStorCost() ); |
| | | sumyearcell.DLRentInCost( cell.DLRentInCost() + sumyearcell.DLRentInCost() ); |
| | | sumyearcell.DLRentOutOfCost( cell.DLRentOutOfCost() + sumyearcell.DLRentOutOfCost() ); |
| | | sumyearcell.WerkToDLRentTransCost( cell.WerkToDLRentTransCost() + sumyearcell.WerkToDLRentTransCost() ); |
| | | sumyearcell.DLRentStorCost( cell.DLRentStorCost() + sumyearcell.DLRentStorCost() ); |
| | | //æ¾ç¤ºå计æåå
æ ¼ |
| | | sumcell.CCRentInCost( cell.CCRentInCost() + sumcell.CCRentInCost() ); |
| | | sumcell.CCRentOutOfCost( cell.CCRentOutOfCost() + sumcell.CCRentOutOfCost() ); |
| | | sumcell.CCLongTransCost( cell.CCLongTransCost() + sumcell.CCLongTransCost() ); |
| | |
| | | columnelement.AppendChild( estimatedtotalcostcellElement ); |
| | | //ç³»æ° |
| | | coefficientcellElement := xmlDOM.CreateElement( "cell" ); |
| | | coefficientcellElement.SetAttribute( "value", c.Coefficient().Format( 'N(Dec)' ) ); |
| | | coefficientcellElement.SetAttribute( "value", c.CoefficientValue() ); |
| | | columnelement.AppendChild( coefficientcellElement ); |
| | | //æ»è´¹ç¨ |
| | | totalcostcellElement := xmlDOM.CreateElement( "cell" ); |
| | |
| | | // cell.EstimatedTotalCost( [Number]valuecell.Value() ); |
| | | // } |
| | | else if( attricell.Value() = 'ç³»æ°' ){ |
| | | cell.Coefficient( [Number]valuecell.Value() ); |
| | | cell.CoefficientValue( valuecell.Value() ); |
| | | } |
| | | // else if( attricell.Value() = 'æ»è´¹ç¨' ){ |
| | | // cell.TotalCost( [Number]valuecell.Value() ); |
| | |
| | | produtparent := DLEngineLogisticsCostReport::GetDefaultProductParent(); |
| | | name := DLEngineLogisticsCostReport::GetDefaultName(); |
| | | allunit := DLEngineLogisticsCostReport::GetDefaultAllUnit(); |
| | | ccunit := DLEngineLogisticsCostReport::GetDefaultCCUnit(); |
| | | dlunit := DLEngineLogisticsCostReport::GetDefaultDLUnit(); |
| | | ccfactory := DLEngineLogisticsCostReport::GetCCFactory(); |
| | | dlfactory := DLEngineLogisticsCostReport::GetDLFactory(); |
| | | //dlline := DLEngineLogisticsCostReport::GetStockingPointDLLine(); |
| | | //ccrent := DLEngineLogisticsCostReport::GetStockingPointCCRent(); |
| | | //dlrent := DLEngineLogisticsCostReport::GetStockingPointCCRent(); |
| | | |
| | | startofplanning := owner.StartOfPlanning().Date(); |
| | | //startofyear := startofplanning.StartOfYear(); |
| | | startofnextyear := startofplanning.StartOfNextYear(); |
| | | |
| | | table := owner.DLEngineLogisticsCostReport( relnew, ID := name, Name := name ); |
| | |
| | | //å¤ç§åºä»å¨è´¹ç¨ï¼ä»å¨æ°é/å
è£
容é*ä»å¨åä»·ï¼å¨Actual inventorieséåå°é¿æ¥å¤ç§åº/大è¿å¤ç§åºè¯¥å卿ºçä»å¨éï¼æ ¹æ®å卿ºå·æ¾å°å¯¹åºçGeneration 忍ªçºµå¶ï¼å¨å卿ºææ¬åæ°è¡¨éæ¾å°å¯¹åºçä»å¨åä»·åå
è£
容éï¼ç¨å
¬å¼è®¡ç®ï¼æåº¦è¿è¡æ±æ» |
| | | //é¿æ¥å¤ç§åºå
¥åº/åºåºè´¹ç¨ï¼å¤§è¿å卿ºçé¿æ¥å¤ç§åºçNew supply |
| | | traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( 'å¤ç§åº' ) ){ |
| | | // unit := stockingpoint.Unit(); |
| | | // parentunits := unit.GetAllParent(); |
| | | //æ¯å¦å±äºé¿æ¥å¤ç§åºç¨äºé¿æ¥å¤ç§åºä»å¨è´¹ç¨ |
| | | // isccrent := stockingpoint.ID().StartsWith( 'é¿æ¥' ) or stockingpoint.ID().StartsWith( 'CC' ); |
| | | //æ¯å¦å±äºå¤§è¿å卿ºçé¿æ¥å¤ç§åºç¨äºé¿æ¥å
¥åº/åºåºè´¹ç¨ |
| | | isdltoccrent := stockingpoint.ID().StartsWith( '大è¿å卿ºçé¿æ¥' ); |
| | | //æ¯å¦å±äºå¤§è¿å¤ç§åºç¨äºå¤§è¿å¤ç§åºä»å¨è´¹ç¨ |
| | | isdlrent := not isdltoccrent and stockingpoint.ID().StartsWith( '大è¿' ) or stockingpoint.ID().StartsWith( 'DL' ); |
| | | // info( '--------------', isccrent, isdltoccrent, isdlrent ); |
| | | if( isdlrent or isdltoccrent){ |
| | | traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() |
| | | and exists( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().StartDate() < startofnextyear and ( pispip.NewSupplyQuantity() <> 0 or pispip.PlannedInventoryLevelEnd() <> 0 ) ) ){ |
| | |
| | | if( exists( productparents, Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | row := table.GetRow( pisp.ProductID() ); |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.Generation().ToLower() = product.Generation().ToLower() and engine.MLB_MQB() = product.MQBMLB() ); |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.Origin() = '大è¿åå
åº' |
| | | and trans.Destination() = '大è¿å¤ç§åº' |
| | | and exists( productparents, Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and exists( productparents, Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 ){ |
| | | products.Add( pisp.Product_MP() ); |
| | | traverse( pisp, ProductInStockingPointInPeriod, pispip, not pispip.Period_MP().IsHistorical() and pispip.Period_MP().StartDate() < startofnextyear |
| | |
| | | cell.CCRentOutOfCost( cell.CCRentOutOfCost() + outcost ); |
| | | cost := ceil( pispip.PlannedInventoryLevelEnd() / enginecost.PackagingCapacity() ) * enginecost.StoragePrice();//åèäºå
¥ |
| | | cell.CCRentStorCost( cell.CCRentStorCost() + cost );//é¿æ¥å¤ç§åºä»å¨è´¹ç¨ |
| | | transcost := selectobject( transcosts, Elements, trans, trans.StartDate() <= column.StartDate() and trans.EndDate() >= column.StartDate() and trans.Origin() = 'é¿æ¥å¤ç§åº' and trans.Destination() = '客æ·åº' ); |
| | | if( not isnull( transcost ) ){ |
| | | cost := ceil( ceil( pispip.NewSupplyQuantity() / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice(); |
| | | cell.CCShorTransCost( cell.CCShorTransCost() + cost );//é¿æ¥çéè¿è¾è´¹ç¨ |
| | | } |
| | | } else { |
| | | //å¨å卿ºææ¬åæ°è¡¨æ¾å°å¯¹åºçå
è£
容é |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= pispip.Start().Date() and engine.EndDate() >= pispip.Start().Date() |
| | |
| | | if( not isnull( enginecost ) ){ |
| | | cost := ceil( pispip.PlannedInventoryLevelEnd() / enginecost.PackagingCapacity() ) * enginecost.StoragePrice();//åèäºå
¥ |
| | | cell.DLRentStorCost( cell.DLRentStorCost() + cost );//大è¿å¤ç§åºä»å¨è´¹ç¨ |
| | | // info( '**********************', pispip.NewSupplyQuantity() ); |
| | | row.SetDLRentEnterCost( column, enginecost, pispip.NewSupplyQuantity() );//大è¿å¤ç§åºå
¥åºè´¹ç¨ |
| | | transcost := selectobject( transcosts, Elements, trans, trans.StartDate() <= pispip.Start().Date() and trans.EndDate() >= pispip.Start().Date() ); |
| | | transcost := selectobject( transcosts, Elements, trans, trans.StartDate() <= pispip.Start().Date() and trans.EndDate() >= pispip.Start().Date() and trans.Origin() = '大è¿åå
åº' and trans.Destination() = '大è¿å¤ç§åº' ); |
| | | if( not isnull( transcost ) ){ |
| | | cost := ceil( ceil( pispip.NewSupplyQuantity() / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice();//åèäºå
¥ |
| | | row.SetFactoryToRentTransCost( column, cost ); |
| | |
| | | } |
| | | } |
| | | } |
| | | //å¨ trip planéæ¾å°å¤§è¿è£
é
线边åºå°å¤§è¿å¤ç§åºçè¿è¾æ°é//大è¿åå
åºå°å¤ç§åº |
| | | //traverse( owner, Unit.Lane.LaneLeg, laneleg ){ |
| | | // isdlspline := laneleg.OriginStockingPointID().EndsWith( 'åå
åº' ) and ( laneleg.OriginStockingPointID().StartsWith( '大è¿' ) or laneleg.OriginStockingPointID().StartsWith( 'DL' ) ); |
| | | // //ç®çå°æ¯å¦æ¯å¤§è¿å¤ç§åº |
| | | // isdlrent := laneleg.DestinationStockingPointID().EndsWith( '大è¿å¤ç§åº' ); |
| | | // if( isdlspline and isdlrent ){ |
| | | // traverse( table, Column, column ){ |
| | | // alltrips := selectset( laneleg, Trip, trip, trip.Arrival().Date() < column.StartDate().StartOfNextMonth() and trip.Arrival().Date() >= column.StartDate() ); |
| | | //// info( '--------------------', alltrips.Size(), column.StartDate() ); |
| | | // enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.StartDate() <= column.StartDate() and engine.EndDate() >= column.StartDate() ); |
| | | // transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.StartDate() <= column.StartDate() and trans.EndDate() >= column.StartDate() ); |
| | | // if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | // producttrips := selectuniquevalues( alltrips, Elements.ProductInTrip, pit, pit.Quantity() <> 0 and exists( pit.Product_MP().GetAllParent(), Elements, e, e.ID() = produtparent ), pit.ProductID() ); |
| | | //// info( '--------------2---------------', producttrips.Size() ); |
| | | // traverse( producttrips, Elements, producttrip ){ |
| | | // |
| | | // row := table.GetRow( producttrip ); |
| | | // product := selectobject( owner, Product_MP, product, product.ID() = producttrip ); |
| | | // products.Add( product ); |
| | | // quantity := sum( alltrips, Elements.ProductInTrip, pit, pit.Product_MP() = product, pit.Quantity() ); |
| | | // enginecost := selectobject( enginecosts, Elements, engine, engine.Generation().ToLower() = product.Generation().ToLower() |
| | | // and engine.MLB_MQB() = product.MQBMLB() |
| | | // and engine.Factory() = ccfactory ); |
| | | // //å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容é |
| | | // transcost := selectobject( transcosts, Elements, trans, trans.Origin() = laneleg.OriginStockingPointID() |
| | | // and trans.Destination() = laneleg.DestinationStockingPointID() |
| | | // and exists( product.GetAllParent(), Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | //// info( '-------------------', not isnull( enginecost ) and not isnull( transcost ), isnull( transcost ), product.ID() ); |
| | | // if( not isnull( enginecost ) and not isnull( transcost ) ){ |
| | | //// info( '-------------------', product.ID(), transcost.LoadingCapacity() ); |
| | | // cost := ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice();//åèäºå
¥ |
| | | // info( quantity, ceil( quantity / enginecost.PackagingCapacity() ), ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) ); |
| | | // row.SetFactoryToRentTransCost( column, cost ); |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | //traverse( owner, Unit.Lane.LaneLeg, laneleg ){ |
| | | // //èµ·å§åºåç¹æ¯å¦æ¯å¤§è¿è£
é
çº¿è¾¹åº |
| | | // isdlspline := laneleg.OriginStockingPointID().EndsWith( 'åå
åº' ) and ( laneleg.OriginStockingPointID().StartsWith( '大è¿' ) or laneleg.OriginStockingPointID().StartsWith( 'DL' ) ); |
| | | // //ç®çå°æ¯å¦æ¯å¤§è¿å¤ç§åº |
| | | // isdlrent := laneleg.DestinationStockingPointID().EndsWith( 'å¤ç§åº' ) and ( laneleg.DestinationStockingPointID().StartsWith( '大è¿' ) or laneleg.DestinationStockingPointID().StartsWith( 'DL' ) ); |
| | | // if( isdlspline and isdlrent ){ |
| | | // traverse( laneleg, Trip, trip, trip.Departure().Date() < startofnextyear ){//ç±äºéè¦èè产åè¿è¾lead timeï¼æ¯ä¸ªæçæ±æ»æ°æ®éè¦æ¨è¿ä¸¤å¤©è¿è¡è®¡ç® |
| | | // periodtime := trip.Departure().StartOfMonth().Date(); |
| | | // periodname := periodtime.Format( "M2/D2/Y" ); |
| | | // |
| | | // column := selectobject( table, Column, column, column.Name() = periodname and column.StartDate() = periodtime ); |
| | | // enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.StartDate() <= trip.Departure().Date() and engine.EndDate() >= trip.Departure().Date() ); |
| | | // transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.StartDate() <= trip.Departure().Date() and trans.EndDate() >= trip.Departure().Date() ); |
| | | // if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | // traverse( trip, ProductInTrip, pit, pit.Quantity() <> 0 and not isnull( column ) and exists( pit.Product_MP().GetAllParent(), Elements, e, e.ID() = produtparent ) ){//æ¥è¯¢äº§åç±»åæ¯å卿º |
| | | // quantity := [Number]pit.Quantity(); |
| | | // row := table.GetRow( pit.ProductID() ); |
| | | // product := pit.Product_MP(); |
| | | // productparents := product.GetAllParent(); |
| | | // |
| | | // //å¨å卿ºææ¬åæ°è¡¨æ¾å°å¯¹åºçå
è£
容é |
| | | // enginecost := selectobject( enginecosts, Elements, engine, engine.Generation().ToLower() = product.Generation().ToLower() |
| | | // and engine.MLB_MQB() = product.MQBMLB() |
| | | // and engine.Factory() = dlfactory ); |
| | | // //å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容é |
| | | // transcost := selectobject( transcosts, Elements, trans, trans.Origin() = laneleg.OriginStockingPointID() |
| | | // and trans.Destination() = laneleg.DestinationStockingPointID() |
| | | // 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 ) ){ |
| | | // products.Add( product ); |
| | | // cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | // //è¿è¾æ°é/å
è£
容é/è£
载容é*è¿è¾åä»· |
| | | // cost := ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice();//åèäºå
¥ |
| | | // cell.WerkToDLRentTransCost( cell.WerkToDLRentTransCost() + cost ); |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | //é¿æ¥é¿éè¿è¾è´¹ç¨ï¼è°æ¨æ°é/å
è£
容é/è£
载容é*è¿è¾åä»·ï¼è°æ¨è®¡åéæ¾å°è¯¥äº§åä»DLå°CCçè°æ¨æ°éï¼å³èµ·å§å°å¤§è¿è£
é
线边åºï¼ç®çå°ä¸ºé¿æ¥å¤ç§åºå¯¹åºçè¿è¾æ°éï¼å¨å卿ºææ¬åæ°è¡¨æ¾å°å¯¹åºçå
è£
容éï¼å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容éï¼ç¨å
¬å¼è®¡ç®å¾åºç»æï¼æåº¦è¿è¡æ±æ» |
| | | traverse( owner, Unit.Lane.LaneLeg, laneleg ){ |
| | | // isdlspline := laneleg.OriginStockingPointID().EndsWith( 'åå
åº' ) and ( laneleg.OriginStockingPointID().StartsWith( '大è¿' ) or laneleg.OriginStockingPointID().StartsWith( 'DL' ) ); |
| | | // //ç®çå°æ¯å¦æ¯å¤§è¿å¤ç§åº |
| | | // isdlrent := laneleg.DestinationStockingPointID().EndsWith( '大è¿å¤ç§åº' ); |
| | | //èµ·å§åºåç¹æ¯å¦æ¯å¤§è¿(大è¿åå
åºï¼ |
| | | isdl := laneleg.OriginStockingPointID().EndsWith( 'åå
åº' ) and ( laneleg.OriginStockingPointID().StartsWith( '大è¿' ) or laneleg.OriginStockingPointID().StartsWith( 'DL' ) ); |
| | | //ç®çå°åºåç¹æ¯å¦æ¯é¿æ¥ï¼é¿æ¥å¤ç§åºï¼ |
| | | iscc := laneleg.DestinationStockingPointID() = '大è¿å卿ºçé¿æ¥å¤ç§åº'; |
| | | if( isdl and iscc ){ |
| | | // if( isdlspline and isdlrent ){ |
| | | traverse( table, Column, column){//, column.StartDate().Month() = 1 |
| | | alltrips := selectset( laneleg, Trip, trip, trip.Arrival().Date() < column.StartDate().StartOfNextMonth() and trip.Arrival().Date() >= column.StartDate() ); |
| | | // info( '--------------------', alltrips.Size(), column.StartDate() ); |
| | | enginecosts := selectset( owner, LogisticsCostEngine, engine, engine.PackagingCapacity() <> 0 and engine.StartDate() <= column.StartDate() and engine.EndDate() >= column.StartDate() ); |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.StartDate() <= column.StartDate() and trans.EndDate() >= column.StartDate() ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | producttrips := selectuniquevalues( alltrips, Elements.ProductInTrip, pit, pit.Quantity() <> 0 and exists( pit.Product_MP().GetAllParent(), Elements, e, e.ID() = produtparent ), pit.ProductID() ); |
| | | // info( '--------------2---------------', producttrips.Size() ); |
| | | traverse( producttrips, Elements, producttrip ){//, producttrip = '6912' |
| | | |
| | | row := table.GetRow( producttrip ); |
| | |
| | | transcost := selectobject( transcosts, Elements, trans, trans.Origin() = laneleg.OriginStockingPointID() |
| | | and trans.Destination() = laneleg.DestinationStockingPointID() |
| | | and exists( product.GetAllParent(), Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | // info( '-------------------', not isnull( enginecost ) and not isnull( transcost ), isnull( transcost ), product.ID() ); |
| | | |
| | | if( not isnull( enginecost ) and not isnull( transcost ) ){ |
| | | // info( '-------------------', product.ID(), transcost.LoadingCapacity() ); |
| | | cost := ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice();//åèäºå
¥ |
| | | // info( quantity, ceil( quantity / enginecost.PackagingCapacity() ), ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) ); |
| | | // row.SetFactoryToRentTransCost( column, cost ); |
| | | cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | cell.CCLongTransCost( cell.CCLongTransCost() + cost ) |
| | | } |
| | |
| | | } |
| | | //é¿æ¥çéè¿è¾è´¹ç¨ï¼å®¢æ·éæ±æ°é/å
è£
容é/è£
载容é*è¿è¾åä»·ï¼å®¢æ·éæ±æ°éåèªforecastésales segmentä¸ºé¿æ¥çæ°éæ±æ»ï¼åç¨å
¬å¼è®¡ç®ï¼æåº¦è¿è¡æ±æ»ï¼å客æ·éæ±æ°éæ¢ç®æè½¦æ¬¡ï¼ |
| | | allforecast := selectset( owner, SalesDemand.astype( Forecast ), forecast, forecast.Quantity() > 0 and not isnull( forecast.SalesSegment_MP() ) and forecast.StartDate() < startofnextyear and //forecast.ProductID() = '6912' and forecast.StartDate().Month() = 1 and |
| | | ( forecast.SalesSegment_MP().Name().StartsWith( 'Changchun' ) or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Changchun' ) ) or forecast.SalesSegment_MP().Name().StartsWith( 'Foshan' ) or forecast.SalesSegment_MP().Name().StartsWith( 'Tianjin' ) |
| | | // ( forecast.SalesSegment_MP().Name().StartsWith( 'Changchun' ) or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Changchun' ) ) or |
| | | ( forecast.SalesSegment_MP().Name().StartsWith( 'Foshan' ) or forecast.SalesSegment_MP().Name().StartsWith( 'Tianjin' ) |
| | | or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Foshan' ) or psalessegment.Name().StartsWith( 'Tianjin' ) ) ) |
| | | and exists( forecast.Product_MP().GetAllParent(), Elements, e, e.ID() = produtparent ) ); |
| | | ccforecasts := selectset( allforecast, Elements, forecast, forecast.SalesSegment_MP().Name().StartsWith( 'Changchun' ) or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Changchun' ) ) ); |
| | | ccproducts := selectuniquevalues( ccforecasts, Elements, forecast, forecast.ProductID() ); |
| | | //ccforecasts := selectset( allforecast, Elements, forecast, forecast.SalesSegment_MP().Name().StartsWith( 'Changchun' ) or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Changchun' ) ) ); |
| | | //ccproducts := selectuniquevalues( ccforecasts, Elements, forecast, forecast.ProductID() ); |
| | | dlforecasts := selectset( allforecast, Elements, forecast, forecast.SalesSegment_MP().Name().StartsWith( 'Foshan' ) or forecast.SalesSegment_MP().Name().StartsWith( 'Tianjin' ) |
| | | or exists( forecast.SalesSegment_MP().GetAllParent(), Elements, psalessegment, psalessegment.Name().StartsWith( 'Foshan' ) or psalessegment.Name().StartsWith( 'Tianjin' ) ) ); |
| | | dlproducts := selectuniquevalues( dlforecasts, Elements, forecast, forecast.ProductID() );; |
| | | traverse( ccproducts, Elements, ccproduct){ |
| | | product := selectobject( owner, Product_MP, product, product.ID() = ccproduct ); |
| | | // info( '************', product.ID(), exists( ccforecasts, Elements, forecast, forecast.Quantity() > 0 )); |
| | | //æ¥è¯¢å¯¹åºçå卿ºææ¬ |
| | | 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 ); |
| | | //å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容é |
| | | transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.Origin() = 'é¿æ¥å¤ç§åº' |
| | | and trans.Destination() = '客æ·åº' |
| | | and exists( product.GetAllParent(), Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | row := table.GetRow( ccproduct ) |
| | | products.Add( product ); |
| | | traverse( table, Column, column ){ |
| | | allpsdips := selectset( ccforecasts, Elements.PlanningSalesDemandInPeriod, psdip, psdip.ProductID() = ccproduct and psdip.Quantity() > 0 and psdip.StartDate() < column.StartDate().StartOfNextMonth() and psdip.StartDate() >= column.StartDate() ); |
| | | enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= column.StartDate() and engine.EndDate() >= column.StartDate() ); |
| | | transcost := selectobject( transcosts, Elements, trans, trans.StartDate() <= column.StartDate() and trans.EndDate() >= column.StartDate() ); |
| | | if( not isnull( enginecost ) and not isnull( transcost ) ){ |
| | | quantity := sum( allpsdips, Elements, psdip, psdip.Quantity() ); |
| | | cost := ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice(); |
| | | cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | cell.CCShorTransCost( cell.CCShorTransCost() + cost ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //info( '***********1********', dlforecasts.Size() ); |
| | | //traverse( ccproducts, Elements, ccproduct){ |
| | | // product := selectobject( owner, Product_MP, product, product.ID() = ccproduct ); |
| | | //// info( '************', product.ID(), exists( ccforecasts, Elements, forecast, forecast.Quantity() > 0 )); |
| | | // //æ¥è¯¢å¯¹åºçå卿ºææ¬ |
| | | // 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 ); |
| | | // //å¨è¿è¾ææ¬åæ°è¡¨éæ¾å°å卿ºå¯¹åºè¿è¾åä»·åè£
载容é |
| | | // transcosts := selectset( owner, LogisticsCostTransport, trans, trans.LoadingCapacity() <> 0 and trans.Origin() = 'é¿æ¥å¤ç§åº' |
| | | // and trans.Destination() = '客æ·åº' |
| | | // and exists( product.GetAllParent(), Elements, e, ifexpr( trans.Product().FindString( 'å卿º', 0 ) >= 0, e.ID() = produtparent, e.ID() = trans.Product() ) ) ); |
| | | // if( not isnull( enginecosts ) and enginecosts.Size() > 0 and not isnull( transcosts ) and transcosts.Size() > 0 ){ |
| | | // row := table.GetRow( ccproduct ) |
| | | // products.Add( product ); |
| | | // traverse( table, Column, column ){ |
| | | // allpsdips := selectset( ccforecasts, Elements.PlanningSalesDemandInPeriod, psdip, psdip.ProductID() = ccproduct and psdip.Quantity() > 0 and psdip.StartDate() < column.StartDate().StartOfNextMonth() and psdip.StartDate() >= column.StartDate() ); |
| | | // enginecost := selectobject( enginecosts, Elements, engine, engine.StartDate() <= column.StartDate() and engine.EndDate() >= column.StartDate() ); |
| | | // transcost := selectobject( transcosts, Elements, trans, trans.StartDate() <= column.StartDate() and trans.EndDate() >= column.StartDate() ); |
| | | // if( not isnull( enginecost ) and not isnull( transcost ) ){ |
| | | // quantity := sum( allpsdips, Elements, psdip, psdip.Quantity() ); |
| | | // cost := ceil( ceil( quantity / enginecost.PackagingCapacity() ) / transcost.LoadingCapacity() ) * transcost.TransportPrice(); |
| | | // cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | // cell.CCShorTransCost( cell.CCShorTransCost() + cost ); |
| | | // } |
| | | // } |
| | | // } |
| | | //} |
| | | traverse( dlproducts, Elements, ccproduct){ |
| | | |
| | | row := table.GetRow( ccproduct ) |
| | |
| | | quantity := sum( allpsdips, Elements, psdip, psdip.Quantity() ); |
| | | |
| | | cost := ceil( quantity / enginecost.PackagingCapacity() ) * enginecost.OutboundPrice(); |
| | | // info( '******************', quantity, cost ); |
| | | // cell := selectobject( row, Cell, cell, cell.Column() = column ); |
| | | row.SetDLRentOutCost( column, cost ); |
| | | } |
| | | } |
| | |
| | | #parent: #root |
| | | Method Initialize ( |
| | | CCEngineLogisticsCostColumn column |
| | | ) |
| | | ) as CCEngineLogisticsCostCell |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | cell := this.Cell( relnew, RentInCost := 0 |
| | | , RentOutOfCost := 0 |
| | | , WerkToRentTransCost := 0 |
| | | , RentStorCost := 0 ); |
| | | , RentStorCost := 0 |
| | | , CoefficientValue := '1.05' ); |
| | | |
| | | column.Cell( relinsert, cell ); |
| | | return cell; |
| | | *] |
| | | } |
| | |
| | | #parent: #root |
| | | Method Initialize ( |
| | | DLEngineLogisticsCostColumn column |
| | | ) |
| | | ) as DLEngineLogisticsCostCell |
| | | { |
| | | TextBody: |
| | | [* |
| | |
| | | , DLRentInCost := 0 |
| | | , DLRentOutOfCost := 0 |
| | | , WerkToDLRentTransCost := 0 |
| | | , DLRentStorCost := 0 ); |
| | | , DLRentStorCost := 0 |
| | | , CoefficientValue := '1.05'); |
| | | |
| | | column.Cell( relinsert, cell ); |
| | | return cell; |
| | | *] |
| | | } |
| | |
| | | //è¿æ»¤åç产åid |
| | | productids := selectuniquevalues( products, Elements, product, true, product.ID() ); |
| | | rows := selectsortedset( table, Row, row, row.RowNr() ); |
| | | //æ¾ç¤ºå |
| | | productcolumn := selectobject( this, Column, column, column.Index() = 0 ); |
| | | attricolumn := selectobject( this, Column, column, column.Index() = 1 ); |
| | | models := selectuniquevalues( table, Column.Cell.Demand, demand, demand.Model() ); |
| | | cellnr := 5 + models.Size(); |
| | | //åè®¡è¡ |
| | | sumrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'æ»äº§é', rows.Size() * cellnr, true ); |
| | | sumrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', '大è¿äº§é', sumrowproduction.RowNr() + 1, false ); |
| | | sumrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'é¿æ¥äº§é', sumrowproduction.RowNr() + 2, false ); |
| | | sumrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'æ»éæ±', sumrowproduction.RowNr() + 3, false ); |
| | | sumname := 'SUM'; |
| | | sumstr := sumname.Format( 'S(Len(10))' ); |
| | | sumrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( 'æ»äº§é' ), sumname, '', rows.Size() * cellnr ); |
| | | sumrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( '大è¿äº§é' ), sumname, '', sumrowproduction.RowNr() + 1 ); |
| | | sumrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( 'é¿æ¥äº§é' ), sumname, '', sumrowproduction.RowNr() + 2 ); |
| | | sumrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( 'æ»éæ±' ), sumname, '', sumrowproduction.RowNr() + 3 ); |
| | | rowno := sumrowproduction.RowNr() + 4; |
| | | traverse( models, Elements, model ){ |
| | | EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', model.Concat( 'éæ±' ), rowno, false ); |
| | | EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( model.Concat( 'éæ±' ) ), sumname, model, rowno ); |
| | | rowno := rowno + 1; |
| | | } |
| | | sumrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, 'SUM', 'åºå', rowno, false ); |
| | | sumrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, sumstr.Concat( 'åºå' ), sumname, '', rowno ); |
| | | |
| | | //è¡è®¡æ° |
| | | rownr := 0; |
| | | traverse( rows, Elements, row, productids.Find( row.Name() ) >= 0 ){ |
| | | |
| | | showrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'æ»ç产', rownr, true );; |
| | | showrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '大è¿äº§é', rownr + 1, false ); |
| | | showrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'é¿æ¥äº§é', rownr + 2, false ); |
| | | showrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'æ»éæ±', rownr + 3, false ); |
| | | rowname := row.Name().Format( 'S(Len(10))' ); |
| | | showrowproduction := EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( 'æ»äº§é' ), row.Name(), '', rownr ); |
| | | showrowdlproduction := EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( '大è¿äº§é' ), row.Name(), '', rownr + 1 ); |
| | | showrowccproduction := EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( 'é¿æ¥äº§é' ), row.Name(), '', rownr + 2 ); |
| | | showrowdemand := EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( 'æ»éæ±' ), row.Name(), '', rownr + 3 ); |
| | | rownr := rownr + 4; |
| | | modelsnr := rownr + 3; |
| | | models := construct( Strings ); |
| | |
| | | traverse( uniquemodels, Elements, e ){ |
| | | |
| | | if( rownr < modelsnr ){ |
| | | EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), e.Concat( 'éæ±' ), rownr, false ); |
| | | EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( e.Concat( 'éæ±' ) ), row.Name(), e, rownr ); |
| | | models.Add( e ); |
| | | rownr := rownr + 1; |
| | | } |
| | |
| | | |
| | | for( rownr := rownr; rownr < modelsnr; rownr ++ ){ |
| | | |
| | | EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), '', rownr, false ); |
| | | EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( '' ), row.Name(), '', rownr ); |
| | | } |
| | | showrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, productcolumn, attricolumn, row.Name(), 'åºå', rownr, false ); |
| | | showrowinventory := EnginePipelineRow::CraeteCellValueForRow( this, rowname.Concat( 'åºå' ), row.Name(), '', rownr ); |
| | | |
| | | traverse( row, Cell, cell, cell.Column().TimeUnit() = search.TimeUnit() ){ |
| | | |
| | |
| | | sumdemand.Value( [String]( [Real]sumdemand.Value() + cell.DemandQuantity() ) ); |
| | | |
| | | traverse( cell, Demand, demand, exists( models, Elements, model, model = demand.Model() ) ){ |
| | | demandrow := selectobject( this, Row, r, r.Name() = row.Name() and exists( r, CellValue, cv, cv.Column() = attricolumn and cv.Value() = demand.Model().Concat( 'éæ±' ) ) ); |
| | | sumdemandrow := selectobject( this, Row, r, r.Name() = 'SUM' and exists( r, CellValue, cv, cv.Column() = attricolumn and cv.Value() = demand.Model().Concat( 'éæ±' ) ) ); |
| | | demandrow := selectobject( this, Row, r, r.Product() = row.Name() and r.Demand() = demand.Model() ); |
| | | sumdemandrow := selectobject( this, Row, r, r.Name() = sumname and r.Demand() = demand.Model() ); |
| | | |
| | | if( not isnull( demandrow ) ){ |
| | | demandcell := column.CellValue( relnew, Value := [String]demand.Quantity() ); |
| | |
| | | } |
| | | traverse( this, Column, column ){ |
| | | for( demandr := sumrowdemand.RowNr() + 1; demandr < sumrowinventory.RowNr(); demandr := demandr + 1 ){ |
| | | demandrow := selectobject( this, Row, r, r.RowNr() = demandr and r.Name() = 'SUM' ); |
| | | demandrow := selectobject( this, Row, r, r.RowNr() = demandr and r.Name() = sumname ); |
| | | // info( '------------------14----------------' ); |
| | | if( not isnull( demandrow ) and not exists( demandrow, CellValue, cv, cv.Column() = column ) ){ |
| | | demandcell := column.CellValue( relnew, Value := '' ); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Demand |
| | | { |
| | | #keys: '3[415136.0.1188490188][415136.0.1188490187][415136.0.1188490189]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Product |
| | | { |
| | | #keys: '3[415136.0.1188500276][415136.0.1188500275][415136.0.1188500277]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | DefaultValue |
| | | { |
| | | TargetAttribute: Product |
| | | } |
| | |
| | | #parent: #root |
| | | StaticMethod CraeteCellValueForRow ( |
| | | EnginePipelineReport table, |
| | | EnginePipelineColumn productcolumn, |
| | | EnginePipelineColumn attricolumn, |
| | | String productname, |
| | | String attriname, |
| | | Number rownr, |
| | | Boolean isfirst |
| | | String name, |
| | | String product, |
| | | String demand, |
| | | Number rownr |
| | | ) as EnginePipelineRow |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Jul-11-2024 (created) |
| | | row := table.Row( relnew, Name := productname, RowNr := rownr ); |
| | | if( not isfirst ){ |
| | | productname := ''; |
| | | } |
| | | pcell := productcolumn.CellValue( relnew, Value := productname ); |
| | | acell := attricolumn.CellValue( relnew, Value := attriname ); |
| | | row.CellValue( relinsert, pcell ); |
| | | row.CellValue( relinsert, acell ); |
| | | traverse( table, Column, column, column.Index() > 1 ){ |
| | | row := table.Row( relnew, Name := name, RowNr := rownr, Product := product, Demand := demand ); |
| | | traverse( table, Column, column ){ |
| | | cell := column.CellValue( relnew, Value := '0' ); |
| | | row.CellValue( relinsert, cell ); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute ID |
| | | { |
| | | #keys: '3[415136.0.1188465615][415136.0.1188465614][415136.0.1188465616]' |
| | | IsReadOnly: true |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Name |
| | | { |
| | | #keys: '3[415136.0.1188465625][415136.0.1188465624][415136.0.1188465626]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initilize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Oct-12-2024 (created) |
| | | owner.Factory( relflush ); |
| | | owner.Factory( relnew, ID := "<All>", Name := 'All' ); |
| | | owner.Factory( relnew, ID := InventorySummaryReport::GetDefaultCCUnit(), Name := InventorySummaryReport::GetDefaultCCUnit() ); |
| | | owner.Factory( relnew, ID := InventorySummaryReport::GetDefaultDLUnit(), Name := InventorySummaryReport::GetDefaultDLUnit() ); |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type Factory |
| | | { |
| | | #keys: '5[415136.0.1188465611][415136.0.1188465609][0.0.0][415136.0.1188465610][415136.0.1188465612]' |
| | | BaseType: Object |
| | | Description: 'æ¥è¯¢å·¥å' |
| | | StructuredName: 'Factorys' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsUpdate |
| | | { |
| | | #keys: '3[415136.0.1188550030][415136.0.1188550029][415136.0.1188550031]' |
| | | Description: 'æ¯å¦è¢«æ´æ°' |
| | | ValueType: Boolean |
| | | } |
| | |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | allunit := FinancialProductionReport::GetDefaultAllUnit(); |
| | | //æ¥è¯¢éè¦å¯¼å
¥çæ¥è¡¨ |
| | | table := selectobject( this.MacroPlan(), FinancialProductionSource.FinancialProductionReport, table, not table.IsImport() and not table.IsShow() ); |
| | | //info( '--------------------------', table.Name() ); |
| | | cnv2 := StringToDate::StandardConverter(); |
| | | cnv2.SetCustomConversion(); |
| | | cnv2.CustomFormatString( "M2/D2/Y" ); |
| | | traverse( this, FinancialProductionReport, report ){ |
| | | //è·å导å
¥ç产åååå·¥åå |
| | | productcolumn := selectobject( report, FinancialProductionColumn, column, column.Name() = 'Product' ); |
| | | unitcolumn := selectobject( report, FinancialProductionColumn, column, column.Name() = 'Unit' ); |
| | | // info( '----------------------1-----------------', productcolumn.Name(), unitcolumn.Name() ); |
| | | |
| | | //è¯»åæ¯ä¸è¡ |
| | | traverse( report, FinancialProductionRow, row ){ |
| | | //è·å产ååå·¥å |
| | | product := selectobject( row, FinancialProductionCell, cell, cell.FinancialProductionColumn() = productcolumn ); |
| | | unit := selectobject( row, FinancialProductionCell, cell, cell.FinancialProductionColumn() = unitcolumn ); |
| | | // info( '----------------------2-----------------', product.Value(), unit.Value() ); |
| | | |
| | | //è·å被导å
¥æ¥è¡¨çå·¥åè¡ |
| | | unitrow := selectobject( table, FinancialProductionRow, unitrow, unitrow.Name() = product.Value() and unitrow.Unit() = unit.Value() ); |
| | | allrow := selectobject( table, FinancialProductionRow, allrow, allrow.Name() = product.Value() and allrow.Unit() = allunit ); |
| | | // info( '----------------------3-----------------', unitrow.Name(), unitrow.Unit() ); |
| | | // and product.Value() = '120 kW Rotor' and unit.Value() = 'Assembly Plant (Spain)' |
| | | traverse( row, FinancialProductionCell, cell, cell.FinancialProductionColumn() <> productcolumn and cell.FinancialProductionColumn() <> unitcolumn ){ |
| | | column := cell.FinancialProductionColumn(); |
| | | unitcell := selectobject( unitrow, FinancialProductionCell, unitcell, unitcell.FinancialProductionColumn().Name() = column.Name() ); |
| | | allcell := selectobject( allrow, FinancialProductionCell, allcell, allcell.FinancialProductionColumn().Name() = column.Name() ); |
| | | // info( isnull( unitcell ), isnull( allcell ), cell.Value(), unitcell.Value(), allcell.Value() ); |
| | | if( not isnull( unitcell ) ){ |
| | | // unitcell.Value( cell.Value() ); |
| | | unitcell.Quantity( [Real]cell.Value() ); |
| | | if( isnull( unitrow ) ){ |
| | | unitrow := table.FinancialProductionRow( relnew, Name := product.Value(), Unit := unit.Value() ); |
| | | } |
| | | if( not isnull( allcell ) ){ |
| | | // value := [Real]cell.Value() + [Real]allcell.Value(); |
| | | // allcell.Value( [String]value ); |
| | | allcell.Quantity( allcell.Quantity() + [Real]allcell.Value() ); |
| | | allrow := selectobject( table, FinancialProductionRow, allrow, allrow.Name() = product.Value() and allrow.Unit() = allunit ); |
| | | if( isnull( unitrow ) ){ |
| | | allrow := table.FinancialProductionRow( relnew, Name := product.Value(), Unit := allunit ); |
| | | } |
| | | |
| | | //è¯»åæ¯ä¸è¡çåå
æ ¼ |
| | | traverse( row, FinancialProductionCell, cell, cell.FinancialProductionColumn() <> productcolumn and cell.FinancialProductionColumn() <> unitcolumn ){ |
| | | //è·å被导å
¥æ¥è¡¨çæ¥æå |
| | | tablecolumn := selectobject( table, FinancialProductionColumn, column, not column.IsDay() and column.Name() = cell.FinancialProductionColumn().Name() ); |
| | | if( isnull( tablecolumn ) ){ |
| | | tablecolumn := table.FinancialProductionColumn( relnew, Name := cell.FinancialProductionColumn().Name(), Period := cnv2.Convert( cell.FinancialProductionColumn().Name() ) ); |
| | | } |
| | | //è·å被导å
¥æ¥è¡¨çåå
æ ¼ |
| | | unitcell := selectobject( unitrow, FinancialProductionCell, unitcell, unitcell.FinancialProductionColumn() = tablecolumn ); |
| | | if( isnull( unitcell ) ){ |
| | | unitcell := tablecolumn.FinancialProductionCell( relnew, IsUpdate := true, Quantity := [Real]cell.Value(), Value := cell.Value() ); |
| | | unitrow.FinancialProductionCell( relinsert, unitcell ); |
| | | }else{ |
| | | if( unitcell.Quantity() <> [Real]cell.Value() ){ |
| | | unitcell.Quantity( [Real]cell.Value() ); |
| | | unitcell.IsUpdate( true ); |
| | | } |
| | | } |
| | | allcell := selectobject( allrow, FinancialProductionCell, allcell, allcell.FinancialProductionColumn() = tablecolumn ); |
| | | if( isnull( unitcell ) ){ |
| | | allcell := tablecolumn.FinancialProductionCell( relnew, Quantity := [Real]cell.Value(), Value := cell.Value() ); |
| | | allrow.FinancialProductionCell( relinsert, allcell ); |
| | | }else{ |
| | | if( allcell.Quantity() <> [Real]cell.Value() ){ |
| | | allcell.Quantity( [Real]cell.Value() ); |
| | | allcell.IsUpdate( true ); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | owner.FPImportData( relflush ); |
| | | ccunit := FinancialProductionReport::GetDefaultCCUnit(); |
| | | dlunit := FinancialProductionReport::GetDefaultDLUnit(); |
| | | //ccalineunit := FinancialProductionReport::GetDefaultCCALineUnit(); |
| | | //dlalienunit := FinancialProductionReport::GetDefaultDLALineUnit() |
| | | //ccmplineunit := FinancialProductionReport::GetDefaultCCMPLineUnit() |
| | | //dlmplineunit := FinancialProductionReport::GetDefaultDLMPLineUnit(); |
| | | allunit := FinancialProductionReport::GetDefaultAllUnit(); |
| | | source := owner.FinancialProductionSource( relnew, IsImport := false, Name := FinancialProductionReport::GetDefaultName() ); |
| | | table := source.FinancialProductionReport( relnew, ID := source.Name(), Name := source.Name(), IsImport := false ); |
| | |
| | | search := owner.FinancialProductionSearch( relnew, Unit := allunit, Generation := allunit, MqbMlb := allunit, Power := allunit ); |
| | | |
| | | products := construct( Product_MPs ); |
| | | //éè¦çæ¥æåºé´ï¼ å¨å天çåªéè¦å½åæ |
| | | //periods := selectset( owner, Period_MP, period, not period.IsHistorical() |
| | | // and period.StartDate() < startofnextmonth |
| | | // and period.TimeUnit() <> Translations::MP_GlobalParameters_Quarter() |
| | | // ); |
| | | //è·åå½åæéè¦çPeriod |
| | | //currentperiods := table.GetCurrentPeriod( startofplanning, periods ); |
| | | table.GenerateColumn( owner ); |
| | | //åå½åçæ¬çproduct planningénew supplyåæ®µï¼å大è¿åé¿æ¥å·¥åç产线ï¼è¿è¡å æ» |
| | | //traverse( owner, StockingPoint_MP, stockingpoint ){ |
| | | traverse( owner, StockingPoint_MP, stockingpoint, stockingpoint.ID().EndsWith( 'åå
åº' ) or stockingpoint.ID() = '大è¿å¤ç§åº' ){ |
| | | iscc := stockingpoint.ID().StartsWith( 'CC' ) or stockingpoint.ID().StartsWith( 'é¿æ¥' ); |
| | | isdl := stockingpoint.ID().StartsWith( 'DL' ) or stockingpoint.ID().StartsWith( '大è¿' ); |
| | | // unit := stockingpoint.Unit(); |
| | | // parentunits := unit.GetAllParent(); |
| | | //æ¯å¦å±äºé¿æ¥å·¥å |
| | | // iscc := unit.ID() = ccalineunit or unit.ID() = ccmplineunit or exists( parentunits, Elements, punit, punit.ID() = ccalineunit or punit.ID() = ccmplineunit ); |
| | | //æ¯å¦å±äºå¤§è¿å·¥å |
| | | // isdl := unit.ID() = dlalienunit or unit.ID() = dlmplineunit or exists( parentunits, Elements, punit, punit.ID() = dlalienunit or punit.ID() = dlmplineunit ); |
| | | |
| | | if( iscc or isdl ){ |
| | | traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() |
| | | and exists( pisp, ProductInStockingPointInPeriod, pispip, pispip.Period_MP().StartDate() >= startofyear and pispip.Period_MP().StartDate() < startofnextyear and pispip.NewSupplyQuantity() <> 0 ) ){ |
| | |
| | | cumulantcolumn := table.FinancialWeeklyColumn( relnew, Name := '累计é' ); |
| | | proportioncolumn := table.FinancialWeeklyColumn( relnew, Name := 'å æ¯' ); |
| | | //SUM |
| | | totalpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]totalpvaluesum ); |
| | | totalpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]( [Number]totalpvaluesum ) ); |
| | | totalproduction.FinancialWeeklyCell( relinsert, totalpcellsum ); |
| | | dlpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]dlpvaluesum ); |
| | | dlpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]( [Number]dlpvaluesum ) ); |
| | | dlproduction.FinancialWeeklyCell( relinsert, dlpcellsum ); |
| | | ccpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]ccpvaluesum ); |
| | | ccpcellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]( [Number]ccpvaluesum ) ); |
| | | ccproduction.FinancialWeeklyCell( relinsert, ccpcellsum ); |
| | | totalscellsum := sumcolumn.FinancialWeeklyCell( relnew, Value := [String]totalsvaluesum ); |
| | | totalsales.FinancialWeeklyCell( relinsert, totalscellsum ); |
| | |
| | | #parent: #root |
| | | Method Generate ( |
| | | InventorySummarySearch search, |
| | | Product_MPs products |
| | | Factorys factorys, |
| | | Strings productids |
| | | ) |
| | | { |
| | | TextBody: |
| | |
| | | //æ¥è¯¢æ¥æè¿åéè¦å¨è®¡åæ¥æä¹å
|
| | | if( search.StartDate().DateTime() < startofendyear and search.EndDate().DateTime() > startofyear ){ |
| | | 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 ) ); |
| | | sumrow.InitializeCell( this ); |
| | | traverse( table, InventroySummaryRow, row, row.Unit() = search.Unit() ){ |
| | | 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( 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() ); |
| | | |
| | | 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 ); |
| | | traverse( factorys, Elements, factory ){ |
| | | this.GenerateShow( table, productids, factory.ID() ); |
| | | } |
| | | } |
| | | |
| | | rows := selectsortedset( this, InventroySummaryRow, row, row.Name() ); |
| | | i := 0; |
| | | traverse( rows, Elements, e ){ |
| | | e.RowNr( i ); |
| | | i := i + 1; |
| | | } |
| | | } |
| | | *] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Method GenerateShow ( |
| | | InventorySummaryReport table, |
| | | Strings productids, |
| | | String factory |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Oct-12-2024 (created) |
| | | sumrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 'SUM' ), Unit := factory ); |
| | | sumrow.InitializeCell( this ); |
| | | traverse( table, InventroySummaryRow, row, row.Unit() = factory ){ |
| | | productid := construct( Strings ); |
| | | productid.Add( row.Name() ); |
| | | |
| | | if( productids.ContainsAll( productid ) ){ |
| | | showrow := this.InventroySummaryRow( relnew, Name := factory.Format( 'S(Len(10))' ).Concat( 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() ); |
| | | |
| | | 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 ); |
| | | } |
| | | } |
| | | } |
| | | *] |
| | | } |
| | |
| | | [* |
| | | // çå
°é¸½ Jun-24-2024 (created) |
| | | owner.InventorySummarySource( relflush ); |
| | | products := construct( Product_MPs ); |
| | | productids := construct( Strings ); |
| | | allunit := InventorySummaryReport::GetDefaultAllUnit(); |
| | | ccunit := InventorySummaryReport::GetDefaultCCUnit(); |
| | | dlunit := InventorySummaryReport::GetDefaultDLUnit(); |
| | |
| | | isdl := exists( parentunits, Elements, punit, punit.ID().StartsWith( 'VWED DL' ) ); |
| | | if( iscc or isdl ){ |
| | | traverse( stockingpoint, ProductInStockingPoint_MP, pisp, pisp.Product_MP().IsLeaf() ){ |
| | | productids.Add( pisp.ProductID() ); |
| | | //è·åå·¥åè¡ |
| | | factoryrow := table.GetRow( ifexpr( iscc, ccunit, dlunit ), pisp.ProductID() ); |
| | | //è·ååè®¡è¡ |
| | |
| | | and pispip.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day(), pispip.Start() ); |
| | | |
| | | traverse( pispips, Elements, pispip ){ |
| | | products.Add( pisp.Product_MP() ); |
| | | period := pispip.Period_MP(); |
| | | periodtime := period.Start().Date(); |
| | | // periodname := periodtime.Format( "M2/D2/Y" ); |
| | |
| | | } |
| | | //åå¨åºåæ´æ°çåçé¢åºåç¹éæ©ä¸æ¾å°è¿äºåºåç¹æå
³èçå·²å¾éåºä½ |
| | | selections := selectset( interface, InventoryPointSelection, selection, allsps.Find( selection.StockpoingPoint() ) >= 0 and selection.IsIncluded() ); |
| | | productids := selectuniquevalues( selections, Elements, selection, selection.ProductID() ); |
| | | productidset := selectuniquevalues( selections, Elements, selection, selection.ProductID() ); |
| | | //æåå°è¿äºåºä½ä¸é¶ä»¶å·çæ°éè¿è¡å æ» |
| | | traverse( table, InventorySummaryColumn, column, column.TimeUnit() = Translations::MP_GlobalParameters_Day() and column.StartDate() < startofplanning.Date() ){ |
| | | traverse( productids, Elements, productid ){ |
| | | traverse( productidset, Elements, productid ){ |
| | | productids.Add( productid ); |
| | | column.GenerateCell( selections, ccsps, dlsps, table, column.StartDate(), column.EndaDate(), productid, allunit, ccunit, dlunit ); |
| | | } |
| | | } |
| | |
| | | e.Delete(); |
| | | } |
| | | } |
| | | showtable.Generate( search, products ); |
| | | |
| | | factorys := selectset( owner, Factory, factory, factory.ID() = FinancialProductionReport::GetDefaultAllUnit() ); |
| | | showtable.Generate( search, factorys, productids ); |
| | | *] |
| | | } |
| | |
| | | } |
| | | table := selectobject( owner, InventorySummarySource.InventorySummaryReport, table, table.IsShow() ); |
| | | if( not isnull( table ) ){ |
| | | products := selectset( owner, Product_MP, product, true ); |
| | | table.Generate( search, products ); |
| | | factorys := selectset( owner, Factory, factory, factory.ID() = FinancialProductionReport::GetDefaultAllUnit() ); |
| | | productids := selectuniquevalues( table, InventroySummaryRow, row, row.Name() ); |
| | | table.Generate( search, factorys, productids ); |
| | | } |
| | | return table; |
| | | *] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Generation |
| | | { |
| | | #keys: '3[415136.0.1188500025][415136.0.1188500024][415136.0.1188500026]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initilize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Oct-12-2024 (created) |
| | | owner.ProductGeneration( relflush ); |
| | | generations := selectuniquevalues( owner, Product_MP, product, product.Generation() ); |
| | | traverse( generations, Elements, e, e <> '' ){ |
| | | owner.ProductGeneration( relnew, Generation := e ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ProductGeneration |
| | | { |
| | | #keys: '5[415136.0.1188500006][415136.0.1188500004][0.0.0][415136.0.1188500005][415136.0.1188500007]' |
| | | BaseType: Object |
| | | Description: '产åGeneration' |
| | | StructuredName: 'ProductGenerations' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute MLBMQB |
| | | { |
| | | #keys: '3[415136.0.1188500042][415136.0.1188500041][415136.0.1188500043]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initilize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Oct-12-2024 (created) |
| | | owner.ProductMLBMQB( relflush ); |
| | | mlbmqbs := selectuniquevalues( owner, Product_MP, product, product.MQBMLB() ); |
| | | traverse( mlbmqbs, Elements, e, e <> '' ){ |
| | | owner.ProductMLBMQB( relnew, MLBMQB := e ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ProductMLBMQB |
| | | { |
| | | #keys: '5[415136.0.1188500039][415136.0.1188500037][0.0.0][415136.0.1188500038][415136.0.1188500040]' |
| | | BaseType: Object |
| | | Description: '产åMLBMQB' |
| | | StructuredName: 'ProductMLBMQBs' |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute Power |
| | | { |
| | | #keys: '3[415136.0.1188465582][415136.0.1188465581][415136.0.1188465583]' |
| | | ValueType: String |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | StaticMethod Initilize ( |
| | | MacroPlan owner |
| | | ) |
| | | { |
| | | TextBody: |
| | | [* |
| | | // çå
°é¸½ Oct-12-2024 (created) |
| | | owner.ProductPower( relflush ); |
| | | powers := selectuniquevalues( owner, Product_MP, product, product.Power() ); |
| | | traverse( powers, Elements, e, e <> '' ){ |
| | | owner.ProductPower( relnew, Power := e ); |
| | | } |
| | | *] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #root |
| | | #parent: #DomainModel |
| | | Type ProductPower |
| | | { |
| | | #keys: '5[415136.0.1188465579][415136.0.1188465577][0.0.0][415136.0.1188465578][415136.0.1188465580]' |
| | | BaseType: Object |
| | | Description: '产åPower' |
| | | StructuredName: 'ProductPowers' |
| | | } |
| | |
| | | AttributeKey: '[415136.0.1160240044]' |
| | | Synonym: 'æ»è´¹ç¨' |
| | | } |
| | | AttributeRepresentation Coefficient |
| | | AttributeRepresentation CoefficientValue |
| | | { |
| | | AttributeKey: '[415136.0.986844757]' |
| | | AttributeKey: '[415136.0.1188511346]' |
| | | Synonym: 'ç³»æ°' |
| | | } |
| | | AttributeRepresentation EstimateTotalCost |
| | |
| | | AttributeKey: '[415136.0.1160164779]' |
| | | Synonym: 'é¿æ¥çéè¿è¾è´¹ç¨' |
| | | } |
| | | AttributeRepresentation Coefficient |
| | | AttributeRepresentation CoefficientValue |
| | | { |
| | | AttributeKey: '[415136.0.992900035]' |
| | | AttributeKey: '[415136.0.1188511355]' |
| | | Synonym: 'ç³»æ°' |
| | | } |
| | | AttributeRepresentation DLRentInCost |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | TypeRepresentation FinancialProductionCell |
| | | { |
| | | AttributeRepresentation Value |
| | | { |
| | | AttributeKey: '[415136.0.834715166]' |
| | | Conditional: |
| | | [ |
| | | DataRepresentation.Conditional |
| | | { |
| | | BackgroundColor: '$FF6666' |
| | | ConditionBody: 'object.IsUpdate()' |
| | | ConversionBody: '' |
| | | DefaultBackgroundColor: false |
| | | InheritConversion: false |
| | | } |
| | | ] |
| | | } |
| | | RelationRepresentation AsFirstCellInColumn { RelationKey: '[415136.0.834715218]' Visibility: 'Normal' } |
| | | } |
| | |
| | | InheritFormatting: false |
| | | } |
| | | } |
| | | RelationRepresentation ActualPISPIPAsWithinPeriod { RelationKey: '[137118.0.348745522]' Visibility: 'Normal' } |
| | | } |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'RentInCost;RentOutOfCost;WerkToRentTransCost;RentStorCost;EstimateTotalCost;Coefficient;AllCost' |
| | | Attributes: 'RentInCost;RentOutOfCost;WerkToRentTransCost;RentStorCost;EstimateTotalCost;CoefficientValue;AllCost' |
| | | Column: 'Column' |
| | | Row: 'Row' |
| | | Taborder: 0 |
| | |
| | | CCEngineLogisticsCostRow row, |
| | | CCEngineLogisticsCostColumn column, |
| | | CCEngineLogisticsCostCell cell, |
| | | Number value, |
| | | Number oldvalue |
| | | String value, |
| | | String oldvalue |
| | | ) id:Response_MatrixEditorTable_358_OnUpdateValue |
| | | { |
| | | #keys: '[415136.0.989501207]' |
| | |
| | | Body: |
| | | [* |
| | | table := selectobject( MacroPlan, CCEngineLogisticsCostReport, report, not report.IsShow() ); |
| | | cell.Coefficient( value ); |
| | | cell.CoefficientValue( value ); |
| | | traverse( table, Row, trow, trow.Name() = row.Name() ){ |
| | | traverse( trow, Cell, tcel, tcel.Column().Name() = column.Name() ){ |
| | | tcel.RentInCost( cell.RentInCost() ); |
| | | tcel.RentOutOfCost( cell.RentOutOfCost() ); |
| | | tcel.WerkToRentTransCost( cell.WerkToRentTransCost() ); |
| | | tcel.RentStorCost( cell.RentStorCost() ); |
| | | tcel.Coefficient( cell.Coefficient() ); |
| | | tcel.CoefficientValue( cell.CoefficientValue() ); |
| | | } |
| | | } |
| | | *] |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Attributes: 'CCRentInCost;CCRentOutOfCost;CCLongTransCost;CCShorTransCost;CCRentStorCost;DLRentInCost;DLRentOutOfCost;WerkToDLRentTransCost;DLRentStorCost;DLRentOtherCost;EstimateTotalCost;Coefficient;AllCost' |
| | | Attributes: 'CCRentInCost;CCRentOutOfCost;CCLongTransCost;CCShorTransCost;CCRentStorCost;DLRentInCost;DLRentOutOfCost;WerkToDLRentTransCost;DLRentStorCost;DLRentOtherCost;EstimateTotalCost;CoefficientValue;AllCost' |
| | | Column: 'Column' |
| | | Row: 'Row' |
| | | Taborder: 0 |
| | |
| | | DLEngineLogisticsCostRow row, |
| | | DLEngineLogisticsCostColumn column, |
| | | DLEngineLogisticsCostCell cell, |
| | | Number value, |
| | | Number oldvalue |
| | | String value, |
| | | String oldvalue |
| | | ) id:Response_MatrixEditorTable_OnUpdateValue |
| | | { |
| | | #keys: '[415136.0.992750480]' |
| | |
| | | Body: |
| | | [* |
| | | table := selectobject( MacroPlan, DLEngineLogisticsCostReport, report, not report.IsShow() ); |
| | | info( focusedattribute ); |
| | | //cell.Coefficient( value ); |
| | | //traverse( table, Row, trow, trow.Name() = row.Name() ){ |
| | | // traverse( trow, Cell, tcel, tcel.Column().Name() = column.Name() ){ |
| | | // tcel.RentEnterCost( cell.RentEnterCost() ); |
| | | // tcel.RentOutCost( cell.RentOutCost() ); |
| | | // tcel.FactoryToRentTransCost( cell.FactoryToRentTransCost() ); |
| | | // tcel.RentStorageCost( cell.RentStorageCost() ); |
| | | // tcel.Coefficient( cell.Coefficient() ); |
| | | // } |
| | | //} |
| | | //info( focusedattribute ); |
| | | cell.CoefficientValue( value ); |
| | | traverse( table, Row, trow, trow.Name() = row.Name() ){ |
| | | traverse( trow, Cell, tcel, tcel.Column().Name() = column.Name() ){ |
| | | tcel.CCRentInCost( cell.CCRentInCost() ); |
| | | tcel.CCRentOutOfCost( cell.CCRentOutOfCost() ); |
| | | tcel.CCLongTransCost( cell.CCLongTransCost() ); |
| | | tcel.CCRentStorCost( cell.CCRentStorCost() ); |
| | | tcel.CCShorTransCost( cell.CCShorTransCost() ); |
| | | tcel.DLRentInCost( cell.DLRentInCost() ); |
| | | tcel.DLRentOutOfCost( cell.DLRentOutOfCost() ); |
| | | tcel.DLRentOtherCost( cell.DLRentOtherCost() ); |
| | | tcel.DLRentStorCost( cell.DLRentStorCost() ); |
| | | tcel.WerkToDLRentTransCost( cell.WerkToDLRentTransCost() ); |
| | | tcel.CoefficientValue( cell.CoefficientValue() ); |
| | | } |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListFactory |
| | | { |
| | | #keys: '[415136.0.1190101823]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorFactory |
| | | { |
| | | #keys: '[415136.0.1190101824]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'Factory' |
| | | ] |
| | | } |
| | | #child: listActionBarPageFactory |
| | | Component DataSetLevelFactory |
| | | { |
| | | #keys: '[415136.0.1190101829]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuFactory |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Name","title":"Name","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Name"}}]' |
| | | ContextMenu: 'listContextMenuFactory' |
| | | SortCriteria: 'ID' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | SelectionCheckboxes: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListGeneration |
| | | { |
| | | #keys: '[415136.0.1191359025]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorGeneration |
| | | { |
| | | #keys: '[415136.0.1191359026]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'MacroPlan' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'ProductGeneration' |
| | | ] |
| | | } |
| | | #child: listActionBarPageGeneration |
| | | Component DataSetLevelGeneration |
| | | { |
| | | #keys: '[415136.0.1191359031]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuGeneration |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Generation","title":"Generation","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Generation"}}]' |
| | | ContextMenu: 'listContextMenuGeneration' |
| | | SortCriteria: 'Generation' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | SelectionCheckboxes: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListMQBMLB |
| | | { |
| | | #keys: '[415136.0.1191359783]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorMQBMLB |
| | | { |
| | | #keys: '[415136.0.1191359784]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'external[MacroPlan]' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'ProductMLBMQB' |
| | | ] |
| | | } |
| | | #child: listActionBarPageMQBMLB |
| | | Component DataSetLevelMQBMLB |
| | | { |
| | | #keys: '[415136.0.1191359789]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuMQBMLB |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"MLBMQB","title":"MLBMQB","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"MLBMQB"}}]' |
| | | ContextMenu: 'listContextMenuMQBMLB' |
| | | SortCriteria: 'MLBMQB' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | SelectionCheckboxes: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component ListPower |
| | | { |
| | | #keys: '[415136.0.1191390143]' |
| | | BaseType: 'WebList' |
| | | Children: |
| | | [ |
| | | Component DataExtractorPower |
| | | { |
| | | #keys: '[415136.0.1191390144]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | | DataType: 'external[MacroPlan]' |
| | | Source: 'MacroPlan' |
| | | Taborder: 0 |
| | | Transformation: 'ProductPower' |
| | | ] |
| | | } |
| | | #child: listActionBarPagePower |
| | | Component DataSetLevelPower |
| | | { |
| | | #keys: '[415136.0.1191390149]' |
| | | BaseType: 'WebDataSetLevel' |
| | | Children: |
| | | [ |
| | | #child: listContextMenuPower |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Power","title":"Power","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Power"}}]' |
| | | ContextMenu: 'listContextMenuPower' |
| | | SortCriteria: 'Power' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | SelectionCheckboxes: true |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component MatrixEditorTable |
| | | { |
| | | #keys: '[415136.0.864612253]' |
| | | #keys: '[415136.0.1191390605]' |
| | | BaseType: 'WebMatrixEditor' |
| | | Children: |
| | | [ |
| | | Component MatrixEditorCellTable |
| | | { |
| | | #keys: '[415136.0.864612254]' |
| | | #keys: '[415136.0.1191390606]' |
| | | BaseType: 'WebMatrixEditorCell' |
| | | Children: |
| | | [ |
| | | Component DataExtractorCell |
| | | { |
| | | #keys: '[415136.0.864612255]' |
| | | #keys: '[415136.0.1191390607]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | |
| | | } |
| | | Component MatrixEditorRowsTable |
| | | { |
| | | #keys: '[415136.0.864612256]' |
| | | #keys: '[415136.0.1191390608]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorRow |
| | | { |
| | | #keys: '[415136.0.864612257]' |
| | | #keys: '[415136.0.1191390609]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | |
| | | } |
| | | Component MatrixEditorColumnsTable |
| | | { |
| | | #keys: '[415136.0.864612258]' |
| | | #keys: '[415136.0.1191390610]' |
| | | BaseType: 'WebMatrixEditorHeaderLevel' |
| | | Children: |
| | | [ |
| | | Component DataExtractorColumn |
| | | { |
| | | #keys: '[415136.0.864612259]' |
| | | #keys: '[415136.0.1191390611]' |
| | | BaseType: 'WebDataExtractor' |
| | | Properties: |
| | | [ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelCategory |
| | | { |
| | | #keys: '[415136.0.862221867]' |
| | | #keys: '[415136.0.1191390575]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component RadioButtonGroupUseForPlanning id:RadioButtonGroupUseForPlanning_545 |
| | | Component RadioButtonGroupUseForPlanning |
| | | { |
| | | #keys: '[415136.0.862222092]' |
| | | #keys: '[415136.0.1191390576]' |
| | | BaseType: 'WebRadioButtonGroup' |
| | | Properties: |
| | | [ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelExport |
| | | { |
| | | #keys: '[415136.0.862221896]' |
| | | #keys: '[415136.0.1191390571]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ButtonSummaryExport |
| | | { |
| | | #keys: '[415136.0.862221939]' |
| | | #keys: '[415136.0.1191390572]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | Component ButtonSearch id:ButtonSearch_612 |
| | | Component ButtonSearch |
| | | { |
| | | #keys: '[415136.0.972100788]' |
| | | #keys: '[415136.0.1191390573]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
| | |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | Component bRefresh id:bRefresh_509 |
| | | Component bRefresh |
| | | { |
| | | #keys: '[415136.0.1153803172]' |
| | | #keys: '[415136.0.1191390574]' |
| | | BaseType: 'WebButton' |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelFactory |
| | | { |
| | | #keys: '[415136.0.1189939584]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: ListFactory |
| | | Component dhFactorys |
| | | { |
| | | #keys: '[415136.0.1190170634]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[Factory]*' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | Title: 'Unit' |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelGeneration |
| | | { |
| | | #keys: '[415136.0.864612093]' |
| | | #keys: '[415136.0.1189909383]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ddslGeneration |
| | | #child: ListGeneration |
| | | Component dhGenerations |
| | | { |
| | | #keys: '[415136.0.864612094]' |
| | | BaseType: 'WebDropDownStringList' |
| | | #keys: '[415136.0.1190170676]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[ProductGeneration]*' |
| | | Properties: |
| | | [ |
| | | Label: 'Generation' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 1 |
| | | Title: 'Generation' |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInventorySummaryColumnSearch |
| | | { |
| | | #keys: '[415136.0.864612101]' |
| | | #keys: '[415136.0.1191390567]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelPeriod |
| | | #child: PanelExport |
| | | #child: PanelCategory |
| | | #child: PanelExport |
| | | #child: PanelPeriod |
| | | ] |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | Taborder: 1 |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInventorySummaryReport |
| | | { |
| | | #keys: '[415136.0.1189939411]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: Panelleft_847 |
| | | #child: PanelRight |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 2 |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelMQBMLB |
| | | { |
| | | #keys: '[415136.0.864612095]' |
| | | #keys: '[415136.0.1191359549]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ddslMQBMLB |
| | | #child: ListMQBMLB |
| | | Component dhMQBMLBs |
| | | { |
| | | #keys: '[415136.0.864612096]' |
| | | BaseType: 'WebDropDownStringList' |
| | | #keys: '[415136.0.1191538373]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[ProductMLBMQB]*' |
| | | Properties: |
| | | [ |
| | | Label: 'MQB/MLB' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 2 |
| | | Title: 'MLB/MQB' |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelPeriod |
| | | { |
| | | #keys: '[415136.0.862221329]' |
| | | #keys: '[415136.0.1191390568]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component DateSelectorStart |
| | | { |
| | | #keys: '[415136.0.862221355]' |
| | | #keys: '[415136.0.1191390569]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | |
| | | } |
| | | Component DateSelectorEnd |
| | | { |
| | | #keys: '[415136.0.862221609]' |
| | | #keys: '[415136.0.1191390570]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelPower |
| | | { |
| | | #keys: '[415136.0.864612097]' |
| | | #keys: '[415136.0.1191390095]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | Component ddslPower |
| | | #child: ListPower |
| | | Component dhPowers |
| | | { |
| | | #keys: '[415136.0.864612098]' |
| | | BaseType: 'WebDropDownStringList' |
| | | #keys: '[415136.0.1191538402]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'structured[ProductPower]*' |
| | | Properties: |
| | | [ |
| | | Label: 'Power' |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 3 |
| | | Title: 'Power' |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelRight |
| | | { |
| | | #keys: '[415136.0.1191390495]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelInventorySummaryColumnSearch |
| | | #child: PanelTable |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelTable |
| | | { |
| | | #keys: '[415136.0.864612252]' |
| | | #keys: '[415136.0.1191390604]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Taborder: 3 |
| | | Taborder: 1 |
| | | ] |
| | | } |
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Component_PanelInventorySummaryProductSearch.def ÐÞ¸Ä |
| | |
| | | Quintiq file version 2.0 |
| | | Component PanelInventorySummaryProductSearch |
| | | Component Panelleft id:Panelleft_847 |
| | | { |
| | | #keys: '[415136.0.864612090]' |
| | | #keys: '[415136.0.1189939498]' |
| | | BaseType: 'WebPanel' |
| | | Children: |
| | | [ |
| | | #child: PanelUnit |
| | | #child: PanelFactory |
| | | #child: PanelGeneration |
| | | #child: PanelMQBMLB |
| | | #child: PanelPower |
| | |
| | | Properties: |
| | | [ |
| | | FixedSize: true |
| | | Orientation: 'horizontal' |
| | | MinimumColumns: 20 |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageFactory |
| | | { |
| | | #keys: '[415136.0.1190101826]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageGeneration |
| | | { |
| | | #keys: '[415136.0.1191359028]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPageMQBMLB |
| | | { |
| | | #keys: '[415136.0.1191359786]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listActionBarPagePower |
| | | { |
| | | #keys: '[415136.0.1191390146]' |
| | | BaseType: 'listActionBarPage' |
| | | Properties: |
| | | [ |
| | | Taborder: 1 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuFactory |
| | | { |
| | | #keys: '[415136.0.1190101831]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuGeneration |
| | | { |
| | | #keys: '[415136.0.1191359033]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuMQBMLB |
| | | { |
| | | #keys: '[415136.0.1191359791]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | Component listContextMenuPower |
| | | { |
| | | #keys: '[415136.0.1191390151]' |
| | | BaseType: 'listContextMenu' |
| | | Properties: |
| | | [ |
| | | Taborder: 0 |
| | | ] |
| | | } |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixEditorActionBarPageTable |
| | | { |
| | | #keys: '[415136.0.864612260]' |
| | | #keys: '[415136.0.1191390612]' |
| | | BaseType: 'matrixEditorActionBarPage' |
| | | Properties: |
| | | [ |
| | |
| | | Quintiq file version 2.0 |
| | | Component matrixeditorContextMenuTable |
| | | { |
| | | #keys: '[415136.0.864612261]' |
| | | #keys: '[415136.0.1191390613]' |
| | | BaseType: 'matrixeditorContextMenu' |
| | | Properties: |
| | | [ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListFactory |
| | | Response OnCheckedChanged () id:Response_ListFactory_OnCheckedChanged_618 |
| | | { |
| | | #keys: '[415136.0.1191538923]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := selectset( MacroPlan, Factory, factory, factory.ID() = FinancialProductionReport::GetDefaultAllUnit() ); |
| | | dhFactorys.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListFactory |
| | | Response OnCheckedChanged ( |
| | | structured[Factory] checkeditems |
| | | ) id:Response_ListFactory_OnCheckedChanged |
| | | { |
| | | #keys: '[415136.0.1191538454]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := checkeditems.Copy(); |
| | | dhFactorys.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListGeneration |
| | | Response OnCheckedChanged () id:Response_ListGeneration_OnCheckedChanged_568 |
| | | { |
| | | #keys: '[415136.0.1190170961]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := selectset( MacroPlan, ProductGeneration, generation, true ); |
| | | dhGenerations.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListGeneration |
| | | Response OnCheckedChanged ( |
| | | structured[ProductGeneration] checkeditems |
| | | ) id:Response_ListGeneration_OnCheckedChanged |
| | | { |
| | | #keys: '[415136.0.1190170872]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := checkeditems.Copy(); |
| | | dhGenerations.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListMQBMLB |
| | | Response OnCheckedChanged () id:Response_ListMQBMLB_OnCheckedChanged_393 |
| | | { |
| | | #keys: '[415136.0.1190171384]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := selectset( MacroPlan, ProductMLBMQB, generation, true ); |
| | | dhMQBMLBs.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListMQBMLB |
| | | Response OnCheckedChanged ( |
| | | structured[ProductMLBMQB] checkeditems |
| | | ) id:Response_ListMQBMLB_OnCheckedChanged |
| | | { |
| | | #keys: '[415136.0.1190171046]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := checkeditems.Copy(); |
| | | dhMQBMLBs.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPower |
| | | Response OnCheckedChanged () id:Response_ListPower_OnCheckedChanged_925 |
| | | { |
| | | #keys: '[415136.0.1190171465]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := selectset( MacroPlan, ProductPower, generation, true ); |
| | | dhPowers.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: ListPower |
| | | Response OnCheckedChanged ( |
| | | structured[ProductPower] checkeditems |
| | | ) id:Response_ListPower_OnCheckedChanged |
| | | { |
| | | #keys: '[415136.0.1190171144]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebList_OnCheckedChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | selections := checkeditems.Copy(); |
| | | dhPowers.Data( &selections ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | Body: |
| | | [* |
| | | table := InventorySummarySource::InitiateSearch( MacroPlan ); |
| | | Factory::Initilize( MacroPlan ); |
| | | ProductGeneration::Initilize( MacroPlan ); |
| | | ProductPower::Initilize( MacroPlan ); |
| | | ProductMLBMQB::Initilize( MacroPlan ); |
| | | //table := selectobject( MacroPlan, InventorySummarySource.InventorySummaryReport, table, table.IsShow() ); |
| | | //info( '------------------2----------------', table.IsShow() ); |
| | | DataHolderTable.Data( table ); |
ÎļþÃû´Ó _Main/UI/MacroPlannerWebApp/Component_FormInventorySummaryReport/Response_PanelCategory_RadioButtonGroupUseForPlanning_OnChanged#847.def ÐÞ¸Ä |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelCategory/RadioButtonGroupUseForPlanning_545 |
| | | Response OnChanged () id:Response_PanelPeriods_RadioButtonGroupUseForPlanning_OnChanged_847 |
| | | #parent: PanelCategory/RadioButtonGroupUseForPlanning |
| | | Response OnChanged () id:Response_PanelCategory_RadioButtonGroupUseForPlanning_OnChanged |
| | | { |
| | | #keys: '[415136.0.862222091]' |
| | | #keys: '[415136.0.1191390561]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebRadioButtonGroup_OnChanged' |
| | | QuillAction |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelCategory/RadioButtonGroupUseForPlanning_545 |
| | | #parent: PanelCategory/RadioButtonGroupUseForPlanning |
| | | Response OnCreated () id:Response_PanelCategory_RadioButtonGroupUseForPlanning_OnCreated |
| | | { |
| | | #keys: '[415136.0.875614032]' |
| | | #keys: '[415136.0.1191390560]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebComponent_OnCreated' |
| | | QuillAction |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelExport/ButtonSearch |
| | | Response OnClick () id:Response_PanelExport_ButtonSearch_OnClick |
| | | { |
| | | #keys: '[415136.0.1191390563]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | c := 'VWED CC'; |
| | | info( c.Format( 'S(Len(10),AlignRight)' ), c.Format( 'S(Len(10))' ) ); |
| | | a := 'All'; |
| | | info( a.Format( 'S(Len(10),AlignRight)' ), a.Format( 'S(Len(10))' ) ); |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | productids := selectuniquevalues( DataHolderProduct.Data(), Elements, product, exists( dhGenerations.Data(), Elements, e, e.Generation() = product.Generation() ) |
| | | and exists( dhMQBMLBs.Data(), Elements, e, e.MLBMQB() = product.MQBMLB() ) |
| | | and exists( dhPowers.Data(), Elements, e, e.Power() = product.Power() ), product.ID() ); |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), dhFactorys.Data(), productids ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |
| | |
| | | #parent: PanelExport/ButtonSummaryExport |
| | | Response OnClick () id:Response_PanelExport_ButtonSummaryExport_OnClick |
| | | { |
| | | #keys: '[415136.0.862221938]' |
| | | #keys: '[415136.0.1191390564]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelExport/bRefresh_509 |
| | | Response OnClick () id:Response_PanelExport_545_bRefresh_OnClick |
| | | #parent: PanelExport/bRefresh |
| | | Response OnClick () id:Response_PanelExport_bRefresh_OnClick |
| | | { |
| | | #keys: '[415136.0.1153803171]' |
| | | #keys: '[415136.0.1191390562]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebButton_OnClick' |
| | | Precondition: |
| | |
| | | #parent: PanelPeriod/DateSelectorEnd |
| | | Response OnChanged () id:Response_PanelPeriod_DateSelectorEnd_OnChanged |
| | | { |
| | | #keys: '[415136.0.862221640]' |
| | | #keys: '[415136.0.1191390565]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | |
| | | #parent: PanelPeriod/DateSelectorStart |
| | | Response OnChanged () id:Response_PanelPeriod_DateSelectorStart_OnChanged |
| | | { |
| | | #keys: '[415136.0.862221461]' |
| | | #keys: '[415136.0.1191390566]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | |
| | | Taborder: 1 |
| | | ] |
| | | } |
| | | #child: PanelInventorySummaryHeader |
| | | #child: PanelTable |
| | | #child: PanelInventorySummaryReport |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | { |
| | | Body: |
| | | [* |
| | | if( not isnull( DataHolderTable.Data() ) ){ |
| | | DataHolderTable.Data().Generate( dhSearch.Data(), DataHolderProduct.Data() ); |
| | | } |
| | | *] |
| | | GroupServerCalls: false |
| | | } |