digraph G {
0 [id="node0" labelType="html" label="<br><b>DeserializeToObject</b><br><br>" tooltip="DeserializeToObject initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument), (setConfiguration,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Configuration), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -1), invoke(lambdavariable(MapObject, StringType, false, -1).toString()), configuration#21468400.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#21468400.values, None).array())))), (setExecutionID,executionID#21468464), (setPlantOperatingTimesArray,invoke(mapobjects(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3), if (isnull(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PlantOperatingTimes), (setClosingTimes,invoke(mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeOfDay), (setHour,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).hour)), (setMinute,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).minute)), (setSecond,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).second))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).closingTimes, None).array())), (setOpeningTimes,invoke(mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeOfDay), (setHour,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).hour)), (setMinute,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).minute)), (setSecond,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).second))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).openingTimes, None).array())), (setPlantId,invoke(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).plantId.toString())), (setWeekdays,invoke(mapobjects(lambdavariable(MapObject, IntegerType, false, -6), static_invoke(java.time.DayOfWeek.valueOf(invoke(cast(lambdavariable(MapObject, IntegerType, false, -6) as string).toString()))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).weekdays, None).array()))), plantOperatingTimesArray#21468466, None).array())), (setProdPlantQuantityInformation,invoke(mapobjects(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantQuantityInformation), (setDemand,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Demand), (setDayBucketDemands,invoke(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DayBucketDemand), (setAnchorIndices,invoke(mapobjects(lambdavariable(MapObject, IntegerType, true, -9), assertnotnull(lambdavariable(MapObject, IntegerType, true, -9)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorIndices, None).toIntArray())), (setConsiderVariance,assertnotnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).considerVariance)), (setAnchorDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -10), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -10))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorDatetimes, None).array())), (setDemandChannel,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandChannel.toString())), (setDemandStream,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandStream.toString())), (setAnchorWeekdays,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -11), static_invoke(java.time.DayOfWeek.valueOf(invoke(lambdavariable(MapObject, StringType, true, -11).toString()))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorWeekdays, None).array())), (setDemandVariances,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -12), assertnotnull(lambdavariable(MapObject, DoubleType, true, -12)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandVariances, None).toDoubleArray())), (setDemandValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -13), assertnotnull(lambdavariable(MapObject, DoubleType, true, -13)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandValues, None).toDoubleArray()))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).demand.dayBucketDemands, None).array())), (setPointInTimeDemands,invoke(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PointInTimeDemand), (setHorizonStartDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).horizonStartDatetime))), (setDemandDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -15), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -15))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandDatetimes, None).array())), (setDemandStream,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandStream.toString())), (setConsiderVariance,assertnotnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).considerVariance)), (setDemandChannel,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandChannel.toString())), (setHorizonEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).horizonEndDatetime))), (setDemandVariances,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -16), assertnotnull(lambdavariable(MapObject, DoubleType, true, -16)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandVariances, None).toDoubleArray())), (setDemandValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -17), assertnotnull(lambdavariable(MapObject, DoubleType, true, -17)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandValues, None).toDoubleArray()))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).demand.pointInTimeDemands, None).array())))), (setSchedule,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Schedule), (setAvailabilityDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.availabilityDatetime))), (setDemandPeriodEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.demandPeriodEndDatetime))), (setOrderDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.orderDatetime))), (setShelfLifeEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.shelfLifeEndDatetime))))), (setPlantId,invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).plantId.toString())), (setRequestedQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -18), assertnotnull(lambdavariable(MapObject, DoubleType, true, -18)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).requestedQuantities, None).toDoubleArray())), (setConfiguration,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Configuration), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -19), invoke(lambdavariable(MapObject, StringType, true, -19).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).configuration.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -20), invoke(lambdavariable(MapObject, StringType, true, -20).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).configuration.values, None).array())))), (setProductId,invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).productId.toString())), (setOpenGoodsMovements,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.OpenGoodsMovements), (setAvailabilityDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -21), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -21))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.availabilityDatetimes, None).array())), (setOrderDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -22), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -22))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.orderDatetimes, None).array())), (setQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -23), assertnotnull(lambdavariable(MapObject, DoubleType, true, -23)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.quantities, None).toDoubleArray())), (setShelfLifeEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -24), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -24))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.shelfLifeEndDatetimes, None).array())))), (setStock,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Stock), (setStockBatchQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -25), assertnotnull(lambdavariable(MapObject, DoubleType, true, -25)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockBatchQuantities, None).toDoubleArray())), (setStockBatchShelfLifeEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -26), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -26))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockBatchShelfLifeEndDatetimes, None).array())), (setStockDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockDatetime))))), (setTimeDependentSettings,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeDependentSettings), (setEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -27), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -27))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.endDatetimes, None).array())), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -28), invoke(lambdavariable(MapObject, StringType, true, -28).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.names, None).array())), (setStartDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -29), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -29))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.startDatetimes, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -30), assertnotnull(lambdavariable(MapObject, DoubleType, true, -30)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.values, None).toDoubleArray())))), (setOutboundUnit,assertnotnull(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).outboundUnit))), prodPlantQuantityInformation#21468465, None).array()))), obj#21468492: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument"];
subgraph cluster1 {
isCluster="true";
id="cluster1";
label="WholeStageCodegen (19)";
tooltip="WholeStageCodegen (19)";
2 [id="node2" labelType="html" label="<br><b>BroadcastNestedLoopJoin</b><br><br>" tooltip="BroadcastNestedLoopJoin BuildRight, Cross"];
3 [id="node3" labelType="html" label="<br><b>SerializeFromObject</b><br><br>" tooltip="SerializeFromObject [assertnotnull(invoke(validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 0, executionID), IntegerType, ObjectType(class java.lang.Integer)).intValue())) AS executionID#21468464, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(productId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 0, productId), StringType, ObjectType(class java.lang.String)))), plantId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 1, plantId), StringType, ObjectType(class java.lang.String)))), requestedQuantities, if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -32), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -32), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), outboundUnit, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 3, outboundUnit), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), stock, named_struct(stockBatchQuantities, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -33), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -33), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), stockBatchShelfLifeEndDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -34), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -34), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, stockBatchShelfLifeEndDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), stockDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, stockDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), demand, named_struct(dayBucketDemands, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(demandChannel, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, demandChannel), StringType, ObjectType(class java.lang.String)))), demandStream, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, demandStream), StringType, ObjectType(class java.lang.String)))), considerVariance, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, considerVariance), BooleanType, ObjectType(class java.lang.Boolean)).booleanValue()), demandValues, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -36), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -36), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), demandVariances, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -37), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -37), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), anchorDatetimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(5))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -38), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -38), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 5, anchorDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), anchorWeekdays, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(6))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -39), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -39), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 6, anchorWeekdays), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), anchorIndices, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(7))) null else if (invoke(class [I.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -40), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -40), IntegerType, ObjectType(class java.lang.Integer)).intValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object)), None)), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, dayBucketDemands), ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true), ObjectType(class java.lang.Object)), None), pointInTimeDemands, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(demandChannel, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, demandChannel), StringType, ObjectType(class java.lang.String)))), demandStream, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, demandStream), StringType, ObjectType(class java.lang.String)))), considerVariance, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, considerVariance), BooleanType, ObjectType(class java.lang.Boolean)).booleanValue()), demandDatetimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -42), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -42), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), demandValues, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -43), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -43), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), demandVariances, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(5))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -44), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -44), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), horizonStartDatetime, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(6))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 6, horizonStartDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), horizonEndDatetime, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(7))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 7, horizonEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, pointInTimeDemands), ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true), ObjectType(class java.lang.Object)), None)), schedule, named_struct(orderDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 0, orderDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), availabilityDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 1, availabilityDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), demandPeriodEndDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 2, demandPeriodEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), shelfLifeEndDatetime, static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 3, shelfLifeEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), openGoodsMovements, named_struct(orderDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -45), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -45), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, orderDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), availabilityDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -46), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -46), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, availabilityDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), quantities, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -47), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -47), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), shelfLifeEndDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -48), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -48), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, shelfLifeEndDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None)), timeDependentSettings, named_struct(endDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -49), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -49), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, endDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), names, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -50), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -50), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, names), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), startDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -51), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -51), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, startDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), values, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -52), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -52), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None)), configuration, named_struct(names, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -53), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -53), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 9, configuration), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false), ObjectType(interface org.apache.spark.sql.Row)), 0, names), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), values, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -54), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -54), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 9, configuration), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false), ObjectType(interface org.apache.spark.sql.Row)), 1, values), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None)))), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 1, prodPlantQuantityInformation), ArrayType(StructType(StructField(productId,StringType,true),StructField(plantId,StringType,true),StructField(requestedQuantities,ArrayType(DoubleType,true),false),StructField(outboundUnit,DoubleType,true),StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false),StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false),StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false),StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false),StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false),StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)),false), ObjectType(class java.lang.Object)), None) AS prodPlantQuantityInformation#21468465, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(plantId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 0, plantId), StringType, ObjectType(class java.lang.String)))), weekdays, if (invoke(class [I.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -56), assertnotnull(invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -56), IntegerType, ObjectType(class java.lang.Integer)).intValue())), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object)), None), openingTimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(hour, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, hour), IntegerType, ObjectType(class java.lang.Integer)).intValue()), minute, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, minute), IntegerType, ObjectType(class java.lang.Integer)).intValue()), second, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, second), IntegerType, ObjectType(class java.lang.Integer)).intValue()))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 2, openingTimes), ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false), ObjectType(class java.lang.Object)), None), closingTimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(hour, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, hour), IntegerType, ObjectType(class java.lang.Integer)).intValue()), minute, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, minute), IntegerType, ObjectType(class java.lang.Integer)).intValue()), second, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, second), IntegerType, ObjectType(class java.lang.Integer)).intValue()))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 3, closingTimes), ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false), ObjectType(class java.lang.Object)), None)), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 2, plantOperatingTimesArray), ArrayType(StructType(StructField(plantId,StringType,true),StructField(weekdays,ArrayType(IntegerType,false),false),StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true),StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)),true), ObjectType(class java.lang.Object)), None) AS plantOperatingTimesArray#21468466]"];
}
4 [id="node4" labelType="html" label="<br><b>MapPartitions</b><br><br>" tooltip="MapPartitions org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x0000000801c396e8@7b2d3f22, obj#21468460: org.apache.spark.sql.Row"];
5 [id="node5" labelType="html" label="<br><b>DeserializeToObject</b><br><br>" tooltip="DeserializeToObject createexternalrow(static_invoke(java.lang.Integer.valueOf(executionID#21468447)), mapobjects(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59), createexternalrow(invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).productId.toString()), invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).plantId.toString()), mapobjects(lambdavariable(MapObject, DoubleType, true, -60), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -60))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).requestedQuantities, Some(class scala.collection.mutable.ArraySeq)), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).outboundUnit)), createexternalrow(mapobjects(lambdavariable(MapObject, DoubleType, true, -61), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -61))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockBatchQuantities, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -62), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -62))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockBatchShelfLifeEndDatetimes, Some(class scala.collection.mutable.ArraySeq)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockDatetime)), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true)), createexternalrow(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandChannel.toString()), invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandStream.toString()), static_invoke(java.lang.Boolean.valueOf(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).considerVariance)), mapobjects(lambdavariable(MapObject, DoubleType, true, -64), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -64))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandValues, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -65), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -65))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandVariances, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -66), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -66))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -67), invoke(lambdavariable(MapObject, StringType, true, -67).toString()), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorWeekdays, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, IntegerType, true, -68), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, IntegerType, true, -68))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorIndices, Some(class scala.collection.mutable.ArraySeq)), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).demand.dayBucketDemands, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandChannel.toString()), invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandStream.toString()), static_invoke(java.lang.Boolean.valueOf(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).considerVariance)), mapobjects(lambdavariable(MapObject, TimestampType, true, -70), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -70))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -71), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -71))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandValues, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -72), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -72))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandVariances, Some(class scala.collection.mutable.ArraySeq)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).horizonStartDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).horizonEndDatetime)), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).demand.pointInTimeDemands, Some(class scala.collection.mutable.ArraySeq)), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)), createexternalrow(static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.orderDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.availabilityDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.demandPeriodEndDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.shelfLifeEndDatetime)), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false)), createexternalrow(mapobjects(lambdavariable(MapObject, TimestampType, true, -73), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -73))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.orderDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -74), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -74))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.availabilityDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -75), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -75))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.quantities, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -76), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -76))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.shelfLifeEndDatetimes, Some(class scala.collection.mutable.ArraySeq)), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)), createexternalrow(mapobjects(lambdavariable(MapObject, TimestampType, true, -77), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -77))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.endDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -78), invoke(lambdavariable(MapObject, StringType, true, -78).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.names, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -79), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -79))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.startDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -80), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -80))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.values, Some(class scala.collection.mutable.ArraySeq)), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true)), createexternalrow(mapobjects(lambdavariable(MapObject, StringType, true, -81), invoke(lambdavariable(MapObject, StringType, true, -81).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).configuration.names, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -82), invoke(lambdavariable(MapObject, StringType, true, -82).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).configuration.values, Some(class scala.collection.mutable.ArraySeq)), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false)), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)), prodPlantQuantityInformation#21468448, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83), if (isnull(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).plantId.toString()), mapobjects(lambdavariable(MapObject, IntegerType, false, -84), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, IntegerType, false, -84))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).weekdays, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85), createexternalrow(static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).hour)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).minute)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).second)), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true)), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).openingTimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86), createexternalrow(static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).hour)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).minute)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).second)), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true)), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).closingTimes, Some(class scala.collection.mutable.ArraySeq)), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)), plantOperatingTimesArray#21468449, Some(class scala.collection.mutable.ArraySeq)), StructField(executionID,IntegerType,false), StructField(prodPlantQuantityInformation,ArrayType(StructType(StructField(productId,StringType,true),StructField(plantId,StringType,true),StructField(requestedQuantities,ArrayType(DoubleType,true),false),StructField(outboundUnit,DoubleType,true),StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false),StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false),StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false),StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false),StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false),StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)),false),false), StructField(plantOperatingTimesArray,ArrayType(StructType(StructField(plantId,StringType,true),StructField(weekdays,ArrayType(IntegerType,false),false),StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true),StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)),true),false)), obj#21468456: org.apache.spark.sql.Row"];
subgraph cluster6 {
isCluster="true";
id="cluster6";
label="WholeStageCodegen (16)";
tooltip="WholeStageCodegen (16)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [executionID#21468447, array(ProductPlantQuantityInformation#21468446) AS prodPlantQuantityInformation#21468448, array(plantOperatingTimes#21467880) AS plantOperatingTimesArray#21468449]"];
8 [id="node8" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [plantOperatingTimes#21467880, struct(productId, product#21467881, plantId, plant#21467882, requestedQuantities, requestedQuantities#21468402, outboundUnit, outboundUnit#21467883, stock, struct(stockBatchQuantities, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#21467886, stockDatetime, stockDatetime#21467884), demand, struct(dayBucketDemands, dayBucketDemands#21467887, pointInTimeDemands, pointInTimeDemands#21467888), schedule, schedule#21468233, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#21468225) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementOrderDatetimes#21468225 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#21468226) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementAvailabilityDatetimes#21468226 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#21468227) THEN openGoodsMovementQuantities#21468227 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#21468228) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementShelfLifeEndDatetimes#21468228 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#21467895, names, timeDependentSettingsName#21467893, startDatetimes, timeDependentSettingsStartDatetime#21467894, values, timeDependentSettingsValue#21467896), configuration, configuration#21468390) AS ProductPlantQuantityInformation#21468446, SPARK_PARTITION_ID() AS executionID#21468447]"];
9 [id="node9" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#21467881, plant#21467882], [product#21468423, plant#21468424], Inner, BuildRight, false"];
}
10 [id="node10" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, struct(names, transform(configurations#21468363, lambdafunction(lambda x#21468391.explodedConf.configurationName, lambda x#21468391, false)), values, transform(configurations#21468363, lambdafunction(lambda x#21468392.explodedConf.configurationValue, lambda x#21468392, false))) AS configuration#21468390]"];
11 [id="node11" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233], functions=[collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)])"];
12 [id="node12" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 20" tooltip="Exchange hashpartitioning(0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, 20), ENSURE_REQUIREMENTS, [plan_id=21236284]"];
13 [id="node13" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000860 AS 0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#21467883)) AS outboundUnit#21467883, knownfloatingpointnormalized(transform(stockBatchQuantities#21467885, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469226)), lambda arg#21469226, false))) AS stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, knownfloatingpointnormalized(transform(dayBucketDemands#21467887, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#21469227)) null else named_struct(demandChannel, lambda arg#21469227.demandChannel, demandStream, lambda arg#21469227.demandStream, considerVariance, lambda arg#21469227.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#21469227.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469228)), lambda arg#21469228, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#21469227.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469229)), lambda arg#21469229, false))), anchorDatetimes, lambda arg#21469227.anchorDatetimes, anchorWeekdays, lambda arg#21469227.anchorWeekdays, anchorIndices, lambda arg#21469227.anchorIndices)), lambda arg#21469227, false))) AS dayBucketDemands#21467887, knownfloatingpointnormalized(transform(pointInTimeDemands#21467888, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#21469230)) null else named_struct(demandChannel, lambda arg#21469230.demandChannel, demandStream, lambda arg#21469230.demandStream, considerVariance, lambda arg#21469230.considerVariance, demandDatetimes, lambda arg#21469230.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#21469230.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469231)), lambda arg#21469231, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#21469230.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469232)), lambda arg#21469232, false))), horizonStartDatetime, lambda arg#21469230.horizonStartDatetime, horizonEndDatetime, lambda arg#21469230.horizonEndDatetime)), lambda arg#21469230, false))) AS pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#21468227, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469233)), lambda arg#21469233, false))) AS openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, knownfloatingpointnormalized(transform(timeDependentSettingsValue#21467896, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469234)), lambda arg#21469234, false))) AS timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233], functions=[partial_collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)])"];
subgraph cluster14 {
isCluster="true";
id="cluster14";
label="WholeStageCodegen (13)";
tooltip="WholeStageCodegen (13)";
15 [id="node15" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235]"];
16 [id="node16" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [distance#21468240L, product#21467881, plant#21467882, configurationName#21468236], [minDistance#21468242L, product#21468301, plant#21468302, configurationName#21468358], Inner"];
}
subgraph cluster17 {
isCluster="true";
id="cluster17";
label="WholeStageCodegen (6)";
tooltip="WholeStageCodegen (6)";
18 [id="node18" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [distance#21468240L ASC NULLS FIRST, product#21467881 ASC NULLS FIRST, plant#21467882 ASC NULLS FIRST, configurationName#21468236 ASC NULLS FIRST], false, 0"];
}
19 [id="node19" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 20" tooltip="Exchange hashpartitioning(distance#21468240L, product#21467881, plant#21467882, configurationName#21468236, 20), ENSURE_REQUIREMENTS, [plan_id=21236066]"];
subgraph cluster20 {
isCluster="true";
id="cluster20";
label="WholeStageCodegen (5)";
tooltip="WholeStageCodegen (5)";
21 [id="node21" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235, explodedConf#21468235.configurationName AS configurationName#21468236, (cast(schedule#21468233.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END) AS distance#21468240L]"];
22 [id="node22" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END <= cast(schedule#21468233.orderDatetime as bigint)) AND isnotnull((cast(schedule#21468233.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#21468235.configurationName))"];
23 [id="node23" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#21467892), [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233], true, [confPos#21468234, explodedConf#21468235]"];
24 [id="node24" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, struct(orderDatetime, stockDatetime#21467884, availabilityDatetime, periodStart#20115006, demandPeriodEndDatetime, periodEnd#20115007, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#21468233]"];
25 [id="node25" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#21467881, plant#21467882], [product#20115004, plant#20115005], Inner, BuildRight, false"];
26 [id="node26" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, coalesce(concat(openGoodsMovementAvailabilityDatetimes#21467890, aggAvailabilityDateTimes#21468209), openGoodsMovementAvailabilityDatetimes#21467890) AS openGoodsMovementAvailabilityDatetimes#21468226, coalesce(concat(openGoodsMovementQuantities#21467889, aggQuantities#21468210), openGoodsMovementQuantities#21467889) AS openGoodsMovementQuantities#21468227, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#21467891, aggShelfLifeEndDateTimes#21468211), openGoodsMovementShelfLifeEndDatetimes#21467891) AS openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, coalesce(concat(openGoodsMovementOrderDatetimes#21467917, aggOrderDateTimes#21468208), openGoodsMovementOrderDatetimes#21467917) AS openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880]"];
27 [id="node27" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#21467881, plant#21467882], [product#21468131, plant#21468132], LeftOuter, BuildRight, false"];
28 [id="node28" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementQuantities#21467889, openGoodsMovementShelfLifeEndDatetimes#21467891, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementAvailabilityDatetimes#21467890 AS openGoodsMovementOrderDatetimes#21467917, cast(struct(plantId, plant#21467882, weekdays, [], openingTimes, [], closingTimes, []) as struct<plantId:string,weekdays:array<int>,openingTimes:array<struct<hour:int,minute:int,second:int>>,closingTimes:array<struct<hour:int,minute:int,second:int>>>) AS plantOperatingTimes#21467880]"];
}
29 [id="node29" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 20" tooltip="Exchange hashpartitioning(product#21467881, plant#21467882, 20), REPARTITION_BY_NUM, [plan_id=21236036]"];
subgraph cluster30 {
isCluster="true";
id="cluster30";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
31 [id="node31" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#21467881) AND isnotnull(plant#21467882)) AND isnotnull(stockDatetime#21467884))"];
32 [id="node32" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
33 [id="node33" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 7<br>metadata time: 0 ms<br>size of files read: 394.6 KiB" tooltip="FileScan parquet [product#21467881,plant#21467882,outboundUnit#21467883,stockDatetime#21467884,stockBatchQuantities#21467885,stockBatchShelfLifeEndDatetimes#21467886,dayBucketDemands#21467887,pointInTimeDemands#21467888,openGoodsMovementQuantities#21467889,openGoodsMovementAvailabilityDatetimes#21467890,openGoodsMovementShelfLifeEndDatetimes#21467891,configuration#21467892,timeDependentSettingsName#21467893,timeDependentSettingsStartDatetime#21467894,timeDependentSettingsEndDatetime#21467895,timeDependentSettingsValue#21467896] Batched: true, DataFilters: [isnotnull(product#21467881), isnotnull(plant#21467882), isnotnull(stockDatetime#21467884)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,outboundUnit:double,stockDatetime:timestamp,stockBatchQuantiti..."];
34 [id="node34" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 2.8 s<br>number of output rows: 712<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236050]"];
35 [id="node35" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 712<br>time in aggregation build total (min, med, max (stageId: taskId))<br>270 ms (1 ms, 1 ms, 45 ms (stage 444474.0: task 5161111))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 444474.0: task 5161111))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#21468130, product#21468131, plant#21468132], functions=[collect_list(orderDatetime#21468133, 0, 0), collect_list(availabilityDatetime#21468135, 0, 0), collect_list(orderQuantityInBaseUnit#21468136, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)])"];
36 [id="node36" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 712<br>time in aggregation build total (min, med, max (stageId: taskId))<br>348 ms (4 ms, 4 ms, 90 ms (stage 444474.0: task 5161112))<br>spill size total (min, med, max (stageId: taskId))<br>0.0 B (0.0 B, 0.0 B, 0.0 B (stage 444474.0: task 5161111))<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[shardId#21468130, product#21468131, plant#21468132], functions=[partial_collect_list(orderDatetime#21468133, 0, 0), partial_collect_list(availabilityDatetime#21468135, 0, 0), partial_collect_list(orderQuantityInBaseUnit#21468136, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)])"];
subgraph cluster37 {
isCluster="true";
id="cluster37";
label="WholeStageCodegen (3)\n \nduration: total (min, med, max (stageId: taskId))\n348 ms (4 ms, 4 ms, 90 ms (stage 444474.0: task 5161112))";
tooltip="WholeStageCodegen (3)";
38 [id="node38" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>59 ms (2 ms, 2 ms, 9 ms (stage 444474.0: task 5161112))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444474.0: task 5161111))<br>number of output rows: 8,544<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131], functions=[])"];
39 [id="node39" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>30 ms (1 ms, 1 ms, 3 ms (stage 444474.0: task 5161121))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444474.0: task 5161111))<br>number of output rows: 8,544<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#21468136)) AS orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131], functions=[])"];
}
40 [id="node40" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 8,544<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 8,544<br>local bytes read total (min, med, max (stageId: taskId))<br>132.4 KiB (4.7 KiB, 6.6 KiB, 9.0 KiB (stage 444474.0: task 5161116))<br>merged fetch fallback count: 0<br>local blocks read: 180<br>remote merged chunks fetched: 0<br>remote blocks read: 137<br>data size total (min, med, max (stageId: taskId))<br>1268.3 KiB (912.0 B, 29.4 KiB, 206.6 KiB (stage 444473.0: task 5160929))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>21 ms (0 ms, 0 ms, 2 ms (stage 444473.0: task 5161092))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 444474.0: task 5161111))<br>remote bytes read total (min, med, max (stageId: taskId))<br>133.7 KiB (5.3 KiB, 6.7 KiB, 8.2 KiB (stage 444474.0: task 5161112))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>22 ms (1 ms, 1 ms, 2 ms (stage 444474.0: task 5161113))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>266.2 KiB (345.0 B, 8.4 KiB, 40.6 KiB (stage 444473.0: task 5160925))" tooltip="Exchange hashpartitioning(product#21468131, plant#21468132, 20), REPARTITION_BY_NUM, [plan_id=21236043]"];
subgraph cluster41 {
isCluster="true";
id="cluster41";
label="WholeStageCodegen (2)\n \nduration: total (min, med, max (stageId: taskId))\n12.4 s (267 ms, 525 ms, 634 ms (stage 444473.0: task 5160925))";
tooltip="WholeStageCodegen (2)";
42 [id="node42" labelType="html" label="<b>Filter</b><br><br>number of output rows: 8,544" tooltip="Filter (((isnotnull(shardId#21468130) AND (0_1_10000000860 = shardId#21468130)) AND isnotnull(product#21468131)) AND isnotnull(plant#21468132))"];
43 [id="node43" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 8,544<br>number of input batches: 141" tooltip="ColumnarToRow"];
}
44 [id="node44" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 141<br>scan time total (min, med, max (stageId: taskId))<br>12.3 s (265 ms, 521 ms, 582 ms (stage 444473.0: task 5161090))<br>metadata time: 1 ms<br>size of files read: 551.9 KiB<br>number of output rows: 8,544" tooltip="FileScan parquet [shardId#21468130,product#21468131,plant#21468132,orderDateTime#21468133,deliveryDateTime#21468134,availabilityDateTime#21468135,orderQuantityInBaseUnit#21468136,orderProposalId#21468137L] Batched: true, DataFilters: [isnotnull(shardId#21468130), (0_1_10000000860 = shardId#21468130), isnotnull(product#21468131), ..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000860), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string,orderDateTime:timestamp,deliveryDateTime:timest..."];
45 [id="node45" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 127 ms<br>number of output rows: 2<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236058]"];
subgraph cluster46 {
isCluster="true";
id="cluster46";
label="WholeStageCodegen (4)\n \nduration: total (min, med, max (stageId: taskId))\n110 ms (0 ms, 1 ms, 21 ms (stage 444469.0: task 5160920))";
tooltip="WholeStageCodegen (4)";
47 [id="node47" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007]"];
48 [id="node48" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2" tooltip="Filter (((isnotnull(shardId#20115001) AND (0_1_10000000860 = shardId#20115001)) AND isnotnull(product#20115004)) AND isnotnull(plant#20115005))"];
}
49 [id="node49" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan [periodEnd#20115007, periodStart#20115006, plant#20115005, product#20115004, shardId#20115001], [isnotnull(shardId#20115001), (0_1_10000000860 = shardId#20115001), isnotnull(product#20115004), isnotnull(plant#20115005)]"];
50 [id="node50" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(product#20115004, plant#20115005, 20), REPARTITION_BY_NUM, [plan_id=21235506]"];
subgraph cluster51 {
isCluster="true";
id="cluster51";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
52 [id="node52" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#20115001,worklistShardItemId#20115002L,version#20115003,product#20115004,plant#20115005,periodStart#20115006,periodEnd#20115007,qty#20115008]"];
}
subgraph cluster53 {
isCluster="true";
id="cluster53";
label="WholeStageCodegen (12)";
tooltip="WholeStageCodegen (12)";
54 [id="node54" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [minDistance#21468242L ASC NULLS FIRST, product#21468301 ASC NULLS FIRST, plant#21468302 ASC NULLS FIRST, configurationName#21468358 ASC NULLS FIRST], false, 0"];
}
55 [id="node55" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 20" tooltip="Exchange hashpartitioning(minDistance#21468242L, product#21468301, plant#21468302, configurationName#21468358, 20), ENSURE_REQUIREMENTS, [plan_id=21236249]"];
subgraph cluster56 {
isCluster="true";
id="cluster56";
label="WholeStageCodegen (11)";
tooltip="WholeStageCodegen (11)";
57 [id="node57" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter isnotnull(minDistance#21468242L)"];
58 [id="node58" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#21468301, plant#21468302, configurationName#21468358], functions=[min(distance#21468360L)])"];
59 [id="node59" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#21468301, plant#21468302, configurationName#21468358], functions=[partial_min(distance#21468360L)])"];
60 [id="node60" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21468301, plant#21468302, explodedConf#21468357.configurationName AS configurationName#21468358, (cast(schedule#21468355.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468357.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468357.configurationValidityDatetime as bigint) END) AS distance#21468360L]"];
61 [id="node61" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((CASE WHEN isnull(explodedConf#21468357.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468357.configurationValidityDatetime as bigint) END <= cast(schedule#21468355.orderDatetime as bigint)) AND isnotnull(explodedConf#21468357.configurationName))"];
62 [id="node62" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#21468312), [product#21468301, plant#21468302, schedule#21468355], true, [confPos#21468356, explodedConf#21468357]"];
63 [id="node63" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21468301, plant#21468302, configuration#21468312, struct(orderDatetime, stockDatetime#21468304, availabilityDatetime, periodStart#21468351, demandPeriodEndDatetime, periodEnd#21468352, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#21468355]"];
64 [id="node64" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#21468301, plant#21468302], [product#21468349, plant#21468350], Inner, BuildRight, false"];
65 [id="node65" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]"];
66 [id="node66" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#21468301, plant#21468302], [product#21468330, plant#21468331], LeftOuter, BuildRight, false"];
}
67 [id="node67" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 20" tooltip="Exchange hashpartitioning(product#21468301, plant#21468302, 20), REPARTITION_BY_NUM, [plan_id=21236075]"];
subgraph cluster68 {
isCluster="true";
id="cluster68";
label="WholeStageCodegen (7)";
tooltip="WholeStageCodegen (7)";
69 [id="node69" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#21468301) AND isnotnull(plant#21468302)) AND isnotnull(stockDatetime#21468304))"];
70 [id="node70" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
71 [id="node71" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 7<br>metadata time: 98 ms<br>size of files read: 394.6 KiB" tooltip="FileScan parquet [product#21468301,plant#21468302,stockDatetime#21468304,configuration#21468312] Batched: true, DataFilters: [isnotnull(product#21468301), isnotnull(plant#21468302), isnotnull(stockDatetime#21468304)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,stockDatetime:timestamp,configuration:array<struct<configurati..."];
72 [id="node72" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 1 ms<br>time to collect: 3.0 s<br>number of output rows: 712<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236086]"];
subgraph cluster73 {
isCluster="true";
id="cluster73";
label="WholeStageCodegen (9)\n \nduration: total (min, med, max (stageId: taskId))\n153 ms (2 ms, 11 ms, 13 ms (stage 444478.0: task 5161140))";
tooltip="WholeStageCodegen (9)";
74 [id="node74" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>103 ms (1 ms, 7 ms, 9 ms (stage 444478.0: task 5161138))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444478.0: task 5161140))<br>number of output rows: 712<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#21468329, product#21468330, plant#21468331], functions=[])"];
75 [id="node75" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>68 ms (1 ms, 4 ms, 6 ms (stage 444478.0: task 5161138))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444478.0: task 5161140))<br>number of output rows: 712<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#21468329, product#21468330, plant#21468331], functions=[])"];
}
76 [id="node76" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 8,544<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 8,544<br>local bytes read total (min, med, max (stageId: taskId))<br>112.9 KiB (1623.0 B, 6.9 KiB, 8.5 KiB (stage 444478.0: task 5161133))<br>merged fetch fallback count: 0<br>local blocks read: 200<br>remote merged chunks fetched: 0<br>remote blocks read: 117<br>data size total (min, med, max (stageId: taskId))<br>934.5 KiB (672.0 B, 21.7 KiB, 152.3 KiB (stage 444477.0: task 5161074))<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time total (min, med, max (stageId: taskId))<br>21 ms (0 ms, 0 ms, 3 ms (stage 444477.0: task 5161093))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 444478.0: task 5161140))<br>remote bytes read total (min, med, max (stageId: taskId))<br>64.0 KiB (1142.0 B, 1621.0 B, 8.9 KiB (stage 444478.0: task 5161132))<br>number of partitions: 20<br>remote reqs duration total (min, med, max (stageId: taskId))<br>19 ms (0 ms, 1 ms, 2 ms (stage 444478.0: task 5161134))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>176.9 KiB (172.0 B, 4.6 KiB, 27.7 KiB (stage 444477.0: task 5161073))" tooltip="Exchange hashpartitioning(product#21468330, plant#21468331, 20), REPARTITION_BY_NUM, [plan_id=21236081]"];
subgraph cluster77 {
isCluster="true";
id="cluster77";
label="WholeStageCodegen (8)\n \nduration: total (min, med, max (stageId: taskId))\n11.6 s (288 ms, 486 ms, 567 ms (stage 444477.0: task 5161108))";
tooltip="WholeStageCodegen (8)";
78 [id="node78" labelType="html" label="<b>Filter</b><br><br>number of output rows: 8,544" tooltip="Filter (((isnotnull(shardId#21468329) AND (0_1_10000000860 = shardId#21468329)) AND isnotnull(product#21468330)) AND isnotnull(plant#21468331))"];
79 [id="node79" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 8,544<br>number of input batches: 141" tooltip="ColumnarToRow"];
}
80 [id="node80" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 141<br>scan time total (min, med, max (stageId: taskId))<br>11.5 s (286 ms, 481 ms, 563 ms (stage 444477.0: task 5161108))<br>metadata time: 419 ms<br>size of files read: 551.9 KiB<br>number of output rows: 8,544" tooltip="FileScan parquet [shardId#21468329,product#21468330,plant#21468331] Batched: true, DataFilters: [isnotnull(shardId#21468329), (0_1_10000000860 = shardId#21468329), isnotnull(product#21468330), ..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000860), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string>"];
81 [id="node81" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 310 ms<br>number of output rows: 1<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236128]"];
82 [id="node82" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
83 [id="node83" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 1<br>time in aggregation build total (min, med, max (stageId: taskId))<br>84 ms (0 ms, 0 ms, 84 ms (stage 444470.0: task 5160962))<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[product#21468423, plant#21468424], functions=[collect_list(qty#21468427, 0, 0)])"];
84 [id="node84" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 1<br>time in aggregation build total (min, med, max (stageId: taskId))<br>2 ms (0 ms, 0 ms, 1 ms (stage 444470.0: task 5160943))<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[product#21468423, plant#21468424], functions=[partial_collect_list(qty#21468427, 0, 0)])"];
subgraph cluster85 {
isCluster="true";
id="cluster85";
label="WholeStageCodegen (14)\n \nduration: total (min, med, max (stageId: taskId))\n2 ms (0 ms, 0 ms, 1 ms (stage 444470.0: task 5160943))";
tooltip="WholeStageCodegen (14)";
86 [id="node86" labelType="html" label="<b>Filter</b><br><br>number of output rows: 2" tooltip="Filter ((isnotnull(qty#21468427) AND isnotnull(product#21468423)) AND isnotnull(plant#21468424))"];
}
87 [id="node87" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan [product#21468423, plant#21468424, qty#21468427], [isnotnull(qty#21468427), isnotnull(product#21468423), isnotnull(plant#21468424)]"];
88 [id="node88" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(product#20115004, plant#20115005, 20), REPARTITION_BY_NUM, [plan_id=21235506]"];
subgraph cluster89 {
isCluster="true";
id="cluster89";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
90 [id="node90" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#20115001,worklistShardItemId#20115002L,version#20115003,product#20115004,plant#20115005,periodStart#20115006,periodEnd#20115007,qty#20115008]"];
}
subgraph cluster91 {
isCluster="true";
id="cluster91";
label="WholeStageCodegen (15)\n \nduration: total (min, med, max (stageId: taskId))\n2 ms (0 ms, 0 ms, 2 ms (stage 444470.0: task 5160972))";
tooltip="WholeStageCodegen (15)";
92 [id="node92" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#21468415, plant#21468416, [] AS requestedQuantities#21468401]"];
93 [id="node93" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnull(qty#21468419) AND isnotnull(product#21468415)) AND isnotnull(plant#21468416))"];
}
94 [id="node94" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [plant#21468416, product#21468415, qty#21468419], [isnull(qty#21468419), isnotnull(product#21468415), isnotnull(plant#21468416)]"];
95 [id="node95" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(product#20115004, plant#20115005, 20), REPARTITION_BY_NUM, [plan_id=21235506]"];
subgraph cluster96 {
isCluster="true";
id="cluster96";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
97 [id="node97" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#20115001,worklistShardItemId#20115002L,version#20115003,product#20115004,plant#20115005,periodStart#20115006,periodEnd#20115007,qty#20115008]"];
}
98 [id="node98" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 409 ms<br>number of output rows: 1<br>data size: 392.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=21236145]"];
subgraph cluster99 {
isCluster="true";
id="cluster99";
label="WholeStageCodegen (18)\n \nduration: total (min, med, max (stageId: taskId))\n10 ms (0 ms, 0 ms, 5 ms (stage 444472.0: task 5161025))";
tooltip="WholeStageCodegen (18)";
100 [id="node100" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 444472.0: task 5161025))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444472.0: task 5161025))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1#21469249], functions=[])"];
}
101 [id="node101" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 1<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 1<br>local bytes read: 75.0 B<br>merged fetch fallback count: 0<br>local blocks read: 1<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 16.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>number of partitions: 20<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 75.0 B" tooltip="Exchange hashpartitioning(1#21469249, 20), ENSURE_REQUIREMENTS, [plan_id=21236141]"];
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (17)\n \nduration: total (min, med, max (stageId: taskId))\n138 ms (0 ms, 0 ms, 61 ms (stage 444471.0: task 5160944))";
tooltip="WholeStageCodegen (17)";
103 [id="node103" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 444471.0: task 5160927))<br>peak memory total (min, med, max (stageId: taskId))<br>5.0 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 444471.0: task 5160927))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1 AS 1#21469249], functions=[])"];
}
104 [id="node104" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 2" tooltip="InMemoryTableScan"];
105 [id="node105" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 0<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 0<br>local bytes read: 0.0 B<br>merged fetch fallback count: 0<br>local blocks read: 0<br>remote merged chunks fetched: 0<br>remote blocks read: 0<br>data size: 0.0 B<br>local merged bytes read: 0.0 B<br>local merged chunks fetched: 0<br>shuffle write time: 0 ms<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time: 0 ms<br>remote bytes read: 0.0 B<br>remote reqs duration: 0 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written: 0.0 B" tooltip="Exchange hashpartitioning(product#20115004, plant#20115005, 20), REPARTITION_BY_NUM, [plan_id=21235506]"];
subgraph cluster106 {
isCluster="true";
id="cluster106";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
107 [id="node107" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#20115001,worklistShardItemId#20115002L,version#20115003,product#20115004,plant#20115005,periodStart#20115006,periodEnd#20115007,qty#20115008]"];
}
2->0;
3->2;
4->3;
5->4;
7->5;
8->7;
9->8;
10->9;
11->10;
12->11;
13->12;
15->13;
16->15;
18->16;
19->18;
21->19;
22->21;
23->22;
24->23;
25->24;
26->25;
27->26;
28->27;
29->28;
31->29;
32->31;
33->32;
34->27;
35->34;
36->35;
38->36;
39->38;
40->39;
42->40;
43->42;
44->43;
45->25;
47->45;
48->47;
49->48;
50->49;
52->50;
54->16;
55->54;
57->55;
58->57;
59->58;
60->59;
61->60;
62->61;
63->62;
64->63;
65->64;
66->65;
67->66;
69->67;
70->69;
71->70;
72->66;
74->72;
75->74;
76->75;
78->76;
79->78;
80->79;
45->64;
81->9;
82->81;
83->82;
84->83;
86->84;
87->86;
88->87;
90->88;
92->82;
93->92;
94->93;
95->94;
97->95;
98->2;
100->98;
101->100;
103->101;
104->103;
105->104;
107->105;
}
== Physical Plan ==
DeserializeToObject (85)
+- * BroadcastNestedLoopJoin Cross BuildRight (84)
:- * SerializeFromObject (77)
: +- MapPartitions (76)
: +- DeserializeToObject (75)
: +- * Project (74)
: +- * Project (73)
: +- * BroadcastHashJoin Inner BuildRight (72)
: :- Project (60)
: : +- ObjectHashAggregate (59)
: : +- Exchange (58)
: : +- ObjectHashAggregate (57)
: : +- * Project (56)
: : +- * SortMergeJoin Inner (55)
: : :- * Sort (30)
: : : +- Exchange (29)
: : : +- * Project (28)
: : : +- * Filter (27)
: : : +- * Generate (26)
: : : +- * Project (25)
: : : +- * BroadcastHashJoin Inner BuildRight (24)
: : : :- * Project (16)
: : : : +- * BroadcastHashJoin LeftOuter BuildRight (15)
: : : : :- * Project (5)
: : : : : +- Exchange (4)
: : : : : +- * Filter (3)
: : : : : +- * ColumnarToRow (2)
: : : : : +- Scan parquet (1)
: : : : +- BroadcastExchange (14)
: : : : +- ObjectHashAggregate (13)
: : : : +- ObjectHashAggregate (12)
: : : : +- * HashAggregate (11)
: : : : +- * HashAggregate (10)
: : : : +- Exchange (9)
: : : : +- * Filter (8)
: : : : +- * ColumnarToRow (7)
: : : : +- Scan parquet (6)
: : : +- BroadcastExchange (23)
: : : +- * Project (22)
: : : +- * Filter (21)
: : : +- InMemoryTableScan (17)
: : : +- InMemoryRelation (18)
: : : +- Exchange (20)
: : : +- * Scan ExistingRDD (19)
: : +- * Sort (54)
: : +- Exchange (53)
: : +- * Filter (52)
: : +- * HashAggregate (51)
: : +- * HashAggregate (50)
: : +- * Project (49)
: : +- * Filter (48)
: : +- * Generate (47)
: : +- * Project (46)
: : +- * BroadcastHashJoin Inner BuildRight (45)
: : :- * Project (43)
: : : +- * BroadcastHashJoin LeftOuter BuildRight (42)
: : : :- Exchange (34)
: : : : +- * Filter (33)
: : : : +- * ColumnarToRow (32)
: : : : +- Scan parquet (31)
: : : +- BroadcastExchange (41)
: : : +- * HashAggregate (40)
: : : +- * HashAggregate (39)
: : : +- Exchange (38)
: : : +- * Filter (37)
: : : +- * ColumnarToRow (36)
: : : +- Scan parquet (35)
: : +- ReusedExchange (44)
: +- BroadcastExchange (71)
: +- Union (70)
: :- ObjectHashAggregate (65)
: : +- ObjectHashAggregate (64)
: : +- * Filter (63)
: : +- InMemoryTableScan (61)
: : +- InMemoryRelation (62)
: : +- Exchange (20)
: : +- * Scan ExistingRDD (19)
: +- * Project (69)
: +- * Filter (68)
: +- InMemoryTableScan (66)
: +- InMemoryRelation (67)
: +- Exchange (20)
: +- * Scan ExistingRDD (19)
+- BroadcastExchange (83)
+- * HashAggregate (82)
+- Exchange (81)
+- * HashAggregate (80)
+- InMemoryTableScan (78)
+- InMemoryRelation (79)
+- Exchange (20)
+- * Scan ExistingRDD (19)
(1) Scan parquet
Output [16]: [product#21467881, plant#21467882, outboundUnit#21467883, stockDatetime#21467884, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementQuantities#21467889, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementShelfLifeEndDatetimes#21467891, configuration#21467892, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000860/0_1_10000000860]
PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)]
ReadSchema: struct<product:string,plant:string,outboundUnit:double,stockDatetime:timestamp,stockBatchQuantities:array<double>,stockBatchShelfLifeEndDatetimes:array<timestamp>,dayBucketDemands:array<struct<demandChannel:string,demandStream:string,considerVariance:boolean,demandValues:array<double>,demandVariances:array<double>,anchorDatetimes:array<timestamp>,anchorWeekdays:array<string>,anchorIndices:array<int>>>,pointInTimeDemands:array<struct<demandChannel:string,demandStream:string,considerVariance:boolean,demandDatetimes:array<timestamp>,demandValues:array<double>,demandVariances:array<double>,horizonStartDatetime:timestamp,horizonEndDatetime:timestamp>>,openGoodsMovementQuantities:array<double>,openGoodsMovementAvailabilityDatetimes:array<timestamp>,openGoodsMovementShelfLifeEndDatetimes:array<timestamp>,configuration:array<struct<configurationValidityDatetime:timestamp,configurationName:string,configurationValue:string>>,timeDependentSettingsName:array<string>,timeDependentSettingsStartDatetime:array<timestamp>,timeDependentSettingsEndDatetime:array<timestamp>,timeDependentSettingsValue:array<double>>
(2) ColumnarToRow [codegen id : 1]
Input [16]: [product#21467881, plant#21467882, outboundUnit#21467883, stockDatetime#21467884, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementQuantities#21467889, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementShelfLifeEndDatetimes#21467891, configuration#21467892, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896]
(3) Filter [codegen id : 1]
Input [16]: [product#21467881, plant#21467882, outboundUnit#21467883, stockDatetime#21467884, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementQuantities#21467889, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementShelfLifeEndDatetimes#21467891, configuration#21467892, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896]
Condition : ((isnotnull(product#21467881) AND isnotnull(plant#21467882)) AND isnotnull(stockDatetime#21467884))
(4) Exchange
Input [16]: [product#21467881, plant#21467882, outboundUnit#21467883, stockDatetime#21467884, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementQuantities#21467889, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementShelfLifeEndDatetimes#21467891, configuration#21467892, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896]
Arguments: hashpartitioning(product#21467881, plant#21467882, 20), REPARTITION_BY_NUM, [plan_id=21236036]
(5) Project [codegen id : 5]
Output [18]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementQuantities#21467889, openGoodsMovementShelfLifeEndDatetimes#21467891, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementAvailabilityDatetimes#21467890 AS openGoodsMovementOrderDatetimes#21467917, cast(struct(plantId, plant#21467882, weekdays, [], openingTimes, [], closingTimes, []) as struct<plantId:string,weekdays:array<int>,openingTimes:array<struct<hour:int,minute:int,second:int>>,closingTimes:array<struct<hour:int,minute:int,second:int>>>) AS plantOperatingTimes#21467880]
Input [16]: [product#21467881, plant#21467882, outboundUnit#21467883, stockDatetime#21467884, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementQuantities#21467889, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementShelfLifeEndDatetimes#21467891, configuration#21467892, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896]
(6) Scan parquet
Output [8]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, deliveryDateTime#21468134, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136, orderProposalId#21468137L]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000860/stream-10000000860-1/shardId=0_1_10000000860]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000860), IsNotNull(product), IsNotNull(plant)]
ReadSchema: struct<shardId:string,product:string,plant:string,orderDateTime:timestamp,deliveryDateTime:timestamp,availabilityDateTime:timestamp,orderQuantityInBaseUnit:double,orderProposalId:bigint>
(7) ColumnarToRow [codegen id : 2]
Input [8]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, deliveryDateTime#21468134, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136, orderProposalId#21468137L]
(8) Filter [codegen id : 2]
Input [8]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, deliveryDateTime#21468134, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136, orderProposalId#21468137L]
Condition : (((isnotnull(shardId#21468130) AND (0_1_10000000860 = shardId#21468130)) AND isnotnull(product#21468131)) AND isnotnull(plant#21468132))
(9) Exchange
Input [8]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, deliveryDateTime#21468134, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136, orderProposalId#21468137L]
Arguments: hashpartitioning(product#21468131, plant#21468132, 20), REPARTITION_BY_NUM, [plan_id=21236043]
(10) HashAggregate [codegen id : 3]
Input [8]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, deliveryDateTime#21468134, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136, orderProposalId#21468137L]
Keys [8]: [plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#21468136)) AS orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131]
Functions: []
Aggregate Attributes: []
Results [8]: [plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131]
(11) HashAggregate [codegen id : 3]
Input [8]: [plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131]
Keys [8]: [plant#21468132, availabilityDateTime#21468135, orderProposalId#21468137L, shardId#21468130, orderDateTime#21468133, orderQuantityInBaseUnit#21468136, deliveryDateTime#21468134, product#21468131]
Functions: []
Aggregate Attributes: []
Results [6]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136]
(12) ObjectHashAggregate
Input [6]: [shardId#21468130, product#21468131, plant#21468132, orderDateTime#21468133, availabilityDateTime#21468135, orderQuantityInBaseUnit#21468136]
Keys [3]: [shardId#21468130, product#21468131, plant#21468132]
Functions [4]: [partial_collect_list(orderDatetime#21468133, 0, 0), partial_collect_list(availabilityDatetime#21468135, 0, 0), partial_collect_list(orderQuantityInBaseUnit#21468136, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [buf#21469237, buf#21469238, buf#21469239, buf#21469240]
Results [7]: [shardId#21468130, product#21468131, plant#21468132, buf#21469241, buf#21469242, buf#21469243, buf#21469244]
(13) ObjectHashAggregate
Input [7]: [shardId#21468130, product#21468131, plant#21468132, buf#21469241, buf#21469242, buf#21469243, buf#21469244]
Keys [3]: [shardId#21468130, product#21468131, plant#21468132]
Functions [4]: [collect_list(orderDatetime#21468133, 0, 0), collect_list(availabilityDatetime#21468135, 0, 0), collect_list(orderQuantityInBaseUnit#21468136, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [collect_list(orderDatetime#21468133, 0, 0)#21468221, collect_list(availabilityDatetime#21468135, 0, 0)#21468222, collect_list(orderQuantityInBaseUnit#21468136, 0, 0)#21468223, collect_list(2199-01-01 00:00:00, 0, 0)#21468224]
Results [6]: [product#21468131, plant#21468132, collect_list(orderDatetime#21468133, 0, 0)#21468221 AS aggOrderDateTimes#21468208, collect_list(availabilityDatetime#21468135, 0, 0)#21468222 AS aggAvailabilityDateTimes#21468209, collect_list(orderQuantityInBaseUnit#21468136, 0, 0)#21468223 AS aggQuantities#21468210, collect_list(2199-01-01 00:00:00, 0, 0)#21468224 AS aggShelfLifeEndDateTimes#21468211]
(14) BroadcastExchange
Input [6]: [product#21468131, plant#21468132, aggOrderDateTimes#21468208, aggAvailabilityDateTimes#21468209, aggQuantities#21468210, aggShelfLifeEndDateTimes#21468211]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236050]
(15) BroadcastHashJoin [codegen id : 5]
Left keys [2]: [product#21467881, plant#21467882]
Right keys [2]: [product#21468131, plant#21468132]
Join type: LeftOuter
Join condition: None
(16) Project [codegen id : 5]
Output [18]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, coalesce(concat(openGoodsMovementAvailabilityDatetimes#21467890, aggAvailabilityDateTimes#21468209), openGoodsMovementAvailabilityDatetimes#21467890) AS openGoodsMovementAvailabilityDatetimes#21468226, coalesce(concat(openGoodsMovementQuantities#21467889, aggQuantities#21468210), openGoodsMovementQuantities#21467889) AS openGoodsMovementQuantities#21468227, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#21467891, aggShelfLifeEndDateTimes#21468211), openGoodsMovementShelfLifeEndDatetimes#21467891) AS openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, coalesce(concat(openGoodsMovementOrderDatetimes#21467917, aggOrderDateTimes#21468208), openGoodsMovementOrderDatetimes#21467917) AS openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880]
Input [24]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21467890, openGoodsMovementQuantities#21467889, openGoodsMovementShelfLifeEndDatetimes#21467891, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementOrderDatetimes#21467917, plantOperatingTimes#21467880, product#21468131, plant#21468132, aggOrderDateTimes#21468208, aggAvailabilityDateTimes#21468209, aggQuantities#21468210, aggShelfLifeEndDateTimes#21468211]
(17) InMemoryTableScan
Output [5]: [periodEnd#20115007, periodStart#20115006, plant#20115005, product#20115004, shardId#20115001]
Arguments: [periodEnd#20115007, periodStart#20115006, plant#20115005, product#20115004, shardId#20115001], [isnotnull(shardId#20115001), (0_1_10000000860 = shardId#20115001), isnotnull(product#20115004), isnotnull(plant#20115005)]
(18) InMemoryRelation
Arguments: [shardId#20115001, worklistShardItemId#20115002L, version#20115003, product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007, qty#20115008], StorageLevel(disk, memory, 2 replicas)
(19) Scan ExistingRDD [codegen id : 1]
Output [8]: [shardId#20115001, worklistShardItemId#20115002L, version#20115003, product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007, qty#20115008]
Arguments: [shardId#20115001, worklistShardItemId#20115002L, version#20115003, product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007, qty#20115008], SQLExecutionRDD[1238345] at start at FileStorageAdapterImpl.java:174, ExistingRDD, UnknownPartitioning(0)
(20) Exchange
Input [8]: [shardId#20115001, worklistShardItemId#20115002L, version#20115003, product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007, qty#20115008]
Arguments: hashpartitioning(product#20115004, plant#20115005, 20), REPARTITION_BY_NUM, [plan_id=21235506]
(21) Filter [codegen id : 4]
Input [5]: [periodEnd#20115007, periodStart#20115006, plant#20115005, product#20115004, shardId#20115001]
Condition : (((isnotnull(shardId#20115001) AND (0_1_10000000860 = shardId#20115001)) AND isnotnull(product#20115004)) AND isnotnull(plant#20115005))
(22) Project [codegen id : 4]
Output [4]: [product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007]
Input [5]: [periodEnd#20115007, periodStart#20115006, plant#20115005, product#20115004, shardId#20115001]
(23) BroadcastExchange
Input [4]: [product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236058]
(24) BroadcastHashJoin [codegen id : 5]
Left keys [2]: [product#21467881, plant#21467882]
Right keys [2]: [product#20115004, plant#20115005]
Join type: Inner
Join condition: None
(25) Project [codegen id : 5]
Output [19]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, struct(orderDatetime, stockDatetime#21467884, availabilityDatetime, periodStart#20115006, demandPeriodEndDatetime, periodEnd#20115007, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#21468233]
Input [22]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, product#20115004, plant#20115005, periodStart#20115006, periodEnd#20115007]
(26) Generate [codegen id : 5]
Input [19]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, configuration#21467892, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233]
Arguments: posexplode(configuration#21467892), [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233], true, [confPos#21468234, explodedConf#21468235]
(27) Filter [codegen id : 5]
Input [20]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235]
Condition : (((CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END <= cast(schedule#21468233.orderDatetime as bigint)) AND isnotnull((cast(schedule#21468233.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#21468235.configurationName))
(28) Project [codegen id : 5]
Output [22]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235, explodedConf#21468235.configurationName AS configurationName#21468236, (cast(schedule#21468233.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468235.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468235.configurationValidityDatetime as bigint) END) AS distance#21468240L]
Input [20]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235]
(29) Exchange
Input [22]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235, configurationName#21468236, distance#21468240L]
Arguments: hashpartitioning(distance#21468240L, product#21467881, plant#21467882, configurationName#21468236, 20), ENSURE_REQUIREMENTS, [plan_id=21236066]
(30) Sort [codegen id : 6]
Input [22]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235, configurationName#21468236, distance#21468240L]
Arguments: [distance#21468240L ASC NULLS FIRST, product#21467881 ASC NULLS FIRST, plant#21467882 ASC NULLS FIRST, configurationName#21468236 ASC NULLS FIRST], false, 0
(31) Scan parquet
Output [4]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000860/0_1_10000000860]
PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)]
ReadSchema: struct<product:string,plant:string,stockDatetime:timestamp,configuration:array<struct<configurationValidityDatetime:timestamp,configurationName:string,configurationValue:string>>>
(32) ColumnarToRow [codegen id : 7]
Input [4]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]
(33) Filter [codegen id : 7]
Input [4]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]
Condition : ((isnotnull(product#21468301) AND isnotnull(plant#21468302)) AND isnotnull(stockDatetime#21468304))
(34) Exchange
Input [4]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]
Arguments: hashpartitioning(product#21468301, plant#21468302, 20), REPARTITION_BY_NUM, [plan_id=21236075]
(35) Scan parquet
Output [3]: [shardId#21468329, product#21468330, plant#21468331]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://2e93940d-4be8-4f12-830d-f0b8d392c03a.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000860/stream-10000000860-1/shardId=0_1_10000000860]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000860), IsNotNull(product), IsNotNull(plant)]
ReadSchema: struct<shardId:string,product:string,plant:string>
(36) ColumnarToRow [codegen id : 8]
Input [3]: [shardId#21468329, product#21468330, plant#21468331]
(37) Filter [codegen id : 8]
Input [3]: [shardId#21468329, product#21468330, plant#21468331]
Condition : (((isnotnull(shardId#21468329) AND (0_1_10000000860 = shardId#21468329)) AND isnotnull(product#21468330)) AND isnotnull(plant#21468331))
(38) Exchange
Input [3]: [shardId#21468329, product#21468330, plant#21468331]
Arguments: hashpartitioning(product#21468330, plant#21468331, 20), REPARTITION_BY_NUM, [plan_id=21236081]
(39) HashAggregate [codegen id : 9]
Input [3]: [shardId#21468329, product#21468330, plant#21468331]
Keys [3]: [shardId#21468329, product#21468330, plant#21468331]
Functions: []
Aggregate Attributes: []
Results [3]: [shardId#21468329, product#21468330, plant#21468331]
(40) HashAggregate [codegen id : 9]
Input [3]: [shardId#21468329, product#21468330, plant#21468331]
Keys [3]: [shardId#21468329, product#21468330, plant#21468331]
Functions: []
Aggregate Attributes: []
Results [2]: [product#21468330, plant#21468331]
(41) BroadcastExchange
Input [2]: [product#21468330, plant#21468331]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236086]
(42) BroadcastHashJoin [codegen id : 11]
Left keys [2]: [product#21468301, plant#21468302]
Right keys [2]: [product#21468330, plant#21468331]
Join type: LeftOuter
Join condition: None
(43) Project [codegen id : 11]
Output [4]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312]
Input [6]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312, product#21468330, plant#21468331]
(44) ReusedExchange [Reuses operator id: 23]
Output [4]: [product#21468349, plant#21468350, periodStart#21468351, periodEnd#21468352]
(45) BroadcastHashJoin [codegen id : 11]
Left keys [2]: [product#21468301, plant#21468302]
Right keys [2]: [product#21468349, plant#21468350]
Join type: Inner
Join condition: None
(46) Project [codegen id : 11]
Output [4]: [product#21468301, plant#21468302, configuration#21468312, struct(orderDatetime, stockDatetime#21468304, availabilityDatetime, periodStart#21468351, demandPeriodEndDatetime, periodEnd#21468352, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#21468355]
Input [8]: [product#21468301, plant#21468302, stockDatetime#21468304, configuration#21468312, product#21468349, plant#21468350, periodStart#21468351, periodEnd#21468352]
(47) Generate [codegen id : 11]
Input [4]: [product#21468301, plant#21468302, configuration#21468312, schedule#21468355]
Arguments: posexplode(configuration#21468312), [product#21468301, plant#21468302, schedule#21468355], true, [confPos#21468356, explodedConf#21468357]
(48) Filter [codegen id : 11]
Input [5]: [product#21468301, plant#21468302, schedule#21468355, confPos#21468356, explodedConf#21468357]
Condition : ((CASE WHEN isnull(explodedConf#21468357.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468357.configurationValidityDatetime as bigint) END <= cast(schedule#21468355.orderDatetime as bigint)) AND isnotnull(explodedConf#21468357.configurationName))
(49) Project [codegen id : 11]
Output [4]: [product#21468301, plant#21468302, explodedConf#21468357.configurationName AS configurationName#21468358, (cast(schedule#21468355.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#21468357.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#21468357.configurationValidityDatetime as bigint) END) AS distance#21468360L]
Input [5]: [product#21468301, plant#21468302, schedule#21468355, confPos#21468356, explodedConf#21468357]
(50) HashAggregate [codegen id : 11]
Input [4]: [product#21468301, plant#21468302, configurationName#21468358, distance#21468360L]
Keys [3]: [product#21468301, plant#21468302, configurationName#21468358]
Functions [1]: [partial_min(distance#21468360L)]
Aggregate Attributes [1]: [min#21469245L]
Results [4]: [product#21468301, plant#21468302, configurationName#21468358, min#21469246L]
(51) HashAggregate [codegen id : 11]
Input [4]: [product#21468301, plant#21468302, configurationName#21468358, min#21469246L]
Keys [3]: [product#21468301, plant#21468302, configurationName#21468358]
Functions [1]: [min(distance#21468360L)]
Aggregate Attributes [1]: [min(distance#21468360L)#21468268L]
Results [4]: [product#21468301, plant#21468302, configurationName#21468358, min(distance#21468360L)#21468268L AS minDistance#21468242L]
(52) Filter [codegen id : 11]
Input [4]: [product#21468301, plant#21468302, configurationName#21468358, minDistance#21468242L]
Condition : isnotnull(minDistance#21468242L)
(53) Exchange
Input [4]: [product#21468301, plant#21468302, configurationName#21468358, minDistance#21468242L]
Arguments: hashpartitioning(minDistance#21468242L, product#21468301, plant#21468302, configurationName#21468358, 20), ENSURE_REQUIREMENTS, [plan_id=21236249]
(54) Sort [codegen id : 12]
Input [4]: [product#21468301, plant#21468302, configurationName#21468358, minDistance#21468242L]
Arguments: [minDistance#21468242L ASC NULLS FIRST, product#21468301 ASC NULLS FIRST, plant#21468302 ASC NULLS FIRST, configurationName#21468358 ASC NULLS FIRST], false, 0
(55) SortMergeJoin [codegen id : 13]
Left keys [4]: [distance#21468240L, product#21467881, plant#21467882, configurationName#21468236]
Right keys [4]: [minDistance#21468242L, product#21468301, plant#21468302, configurationName#21468358]
Join type: Inner
Join condition: None
(56) Project [codegen id : 13]
Output [20]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235]
Input [26]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235, configurationName#21468236, distance#21468240L, product#21468301, plant#21468302, configurationName#21468358, minDistance#21468242L]
(57) ObjectHashAggregate
Input [20]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, confPos#21468234, explodedConf#21468235]
Keys [19]: [0_1_10000000860 AS 0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#21467883)) AS outboundUnit#21467883, knownfloatingpointnormalized(transform(stockBatchQuantities#21467885, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469226)), lambda arg#21469226, false))) AS stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, knownfloatingpointnormalized(transform(dayBucketDemands#21467887, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#21469227)) null else named_struct(demandChannel, lambda arg#21469227.demandChannel, demandStream, lambda arg#21469227.demandStream, considerVariance, lambda arg#21469227.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#21469227.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469228)), lambda arg#21469228, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#21469227.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469229)), lambda arg#21469229, false))), anchorDatetimes, lambda arg#21469227.anchorDatetimes, anchorWeekdays, lambda arg#21469227.anchorWeekdays, anchorIndices, lambda arg#21469227.anchorIndices)), lambda arg#21469227, false))) AS dayBucketDemands#21467887, knownfloatingpointnormalized(transform(pointInTimeDemands#21467888, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#21469230)) null else named_struct(demandChannel, lambda arg#21469230.demandChannel, demandStream, lambda arg#21469230.demandStream, considerVariance, lambda arg#21469230.considerVariance, demandDatetimes, lambda arg#21469230.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#21469230.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469231)), lambda arg#21469231, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#21469230.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469232)), lambda arg#21469232, false))), horizonStartDatetime, lambda arg#21469230.horizonStartDatetime, horizonEndDatetime, lambda arg#21469230.horizonEndDatetime)), lambda arg#21469230, false))) AS pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#21468227, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469233)), lambda arg#21469233, false))) AS openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, knownfloatingpointnormalized(transform(timeDependentSettingsValue#21467896, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#21469234)), lambda arg#21469234, false))) AS timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233]
Functions [1]: [partial_collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)]
Aggregate Attributes [1]: [buf#21469235]
Results [20]: [0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, buf#21469236]
(58) Exchange
Input [20]: [0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, buf#21469236]
Arguments: hashpartitioning(0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, 20), ENSURE_REQUIREMENTS, [plan_id=21236284]
(59) ObjectHashAggregate
Input [20]: [0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, buf#21469236]
Keys [19]: [0_1_10000000860#21469225, product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233]
Functions [1]: [collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)#21468387]
Results [19]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, sort_array(collect_list(struct(confPos, confPos#21468234, explodedConf, explodedConf#21468235), 0, 0)#21468387, true) AS configurations#21468363]
(60) Project
Output [19]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, struct(names, transform(configurations#21468363, lambdafunction(lambda x#21468391.explodedConf.configurationName, lambda x#21468391, false)), values, transform(configurations#21468363, lambdafunction(lambda x#21468392.explodedConf.configurationValue, lambda x#21468392, false))) AS configuration#21468390]
Input [19]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, configurations#21468363]
(61) InMemoryTableScan
Output [3]: [product#21468423, plant#21468424, qty#21468427]
Arguments: [product#21468423, plant#21468424, qty#21468427], [isnotnull(qty#21468427), isnotnull(product#21468423), isnotnull(plant#21468424)]
(62) InMemoryRelation
Arguments: [shardId#21468420, worklistShardItemId#21468421L, version#21468422, product#21468423, plant#21468424, periodStart#21468425, periodEnd#21468426, qty#21468427], StorageLevel(disk, memory, 2 replicas)
(63) Filter [codegen id : 14]
Input [3]: [product#21468423, plant#21468424, qty#21468427]
Condition : ((isnotnull(qty#21468427) AND isnotnull(product#21468423)) AND isnotnull(plant#21468424))
(64) ObjectHashAggregate
Input [3]: [product#21468423, plant#21468424, qty#21468427]
Keys [2]: [product#21468423, plant#21468424]
Functions [1]: [partial_collect_list(qty#21468427, 0, 0)]
Aggregate Attributes [1]: [buf#21469247]
Results [3]: [product#21468423, plant#21468424, buf#21469248]
(65) ObjectHashAggregate
Input [3]: [product#21468423, plant#21468424, buf#21469248]
Keys [2]: [product#21468423, plant#21468424]
Functions [1]: [collect_list(qty#21468427, 0, 0)]
Aggregate Attributes [1]: [collect_list(qty#21468427, 0, 0)#21468411]
Results [3]: [product#21468423, plant#21468424, collect_list(qty#21468427, 0, 0)#21468411 AS requestedQuantities#21468402]
(66) InMemoryTableScan
Output [3]: [plant#21468416, product#21468415, qty#21468419]
Arguments: [plant#21468416, product#21468415, qty#21468419], [isnull(qty#21468419), isnotnull(product#21468415), isnotnull(plant#21468416)]
(67) InMemoryRelation
Arguments: [shardId#21468412, worklistShardItemId#21468413L, version#21468414, product#21468415, plant#21468416, periodStart#21468417, periodEnd#21468418, qty#21468419], StorageLevel(disk, memory, 2 replicas)
(68) Filter [codegen id : 15]
Input [3]: [plant#21468416, product#21468415, qty#21468419]
Condition : ((isnull(qty#21468419) AND isnotnull(product#21468415)) AND isnotnull(plant#21468416))
(69) Project [codegen id : 15]
Output [3]: [product#21468415, plant#21468416, [] AS requestedQuantities#21468401]
Input [3]: [plant#21468416, product#21468415, qty#21468419]
(70) Union
(71) BroadcastExchange
Input [3]: [product#21468423, plant#21468424, requestedQuantities#21468402]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=21236128]
(72) BroadcastHashJoin [codegen id : 16]
Left keys [2]: [product#21467881, plant#21467882]
Right keys [2]: [product#21468423, plant#21468424]
Join type: Inner
Join condition: None
(73) Project [codegen id : 16]
Output [3]: [plantOperatingTimes#21467880, struct(productId, product#21467881, plantId, plant#21467882, requestedQuantities, requestedQuantities#21468402, outboundUnit, outboundUnit#21467883, stock, struct(stockBatchQuantities, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#21467886, stockDatetime, stockDatetime#21467884), demand, struct(dayBucketDemands, dayBucketDemands#21467887, pointInTimeDemands, pointInTimeDemands#21467888), schedule, schedule#21468233, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#21468225) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementOrderDatetimes#21468225 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#21468226) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementAvailabilityDatetimes#21468226 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#21468227) THEN openGoodsMovementQuantities#21468227 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#21468228) AND isnotnull(openGoodsMovementQuantities#21468227)) THEN openGoodsMovementShelfLifeEndDatetimes#21468228 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#21467895, names, timeDependentSettingsName#21467893, startDatetimes, timeDependentSettingsStartDatetime#21467894, values, timeDependentSettingsValue#21467896), configuration, configuration#21468390) AS ProductPlantQuantityInformation#21468446, SPARK_PARTITION_ID() AS executionID#21468447]
Input [22]: [product#21467881, plant#21467882, stockDatetime#21467884, outboundUnit#21467883, stockBatchQuantities#21467885, stockBatchShelfLifeEndDatetimes#21467886, dayBucketDemands#21467887, pointInTimeDemands#21467888, openGoodsMovementAvailabilityDatetimes#21468226, openGoodsMovementQuantities#21468227, openGoodsMovementShelfLifeEndDatetimes#21468228, timeDependentSettingsName#21467893, timeDependentSettingsStartDatetime#21467894, timeDependentSettingsEndDatetime#21467895, timeDependentSettingsValue#21467896, openGoodsMovementOrderDatetimes#21468225, plantOperatingTimes#21467880, schedule#21468233, configuration#21468390, product#21468423, plant#21468424, requestedQuantities#21468402]
(74) Project [codegen id : 16]
Output [3]: [executionID#21468447, array(ProductPlantQuantityInformation#21468446) AS prodPlantQuantityInformation#21468448, array(plantOperatingTimes#21467880) AS plantOperatingTimesArray#21468449]
Input [3]: [plantOperatingTimes#21467880, ProductPlantQuantityInformation#21468446, executionID#21468447]
(75) DeserializeToObject
Input [3]: [executionID#21468447, prodPlantQuantityInformation#21468448, plantOperatingTimesArray#21468449]
Arguments: createexternalrow(static_invoke(java.lang.Integer.valueOf(executionID#21468447)), mapobjects(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59), createexternalrow(invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).productId.toString()), invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).plantId.toString()), mapobjects(lambdavariable(MapObject, DoubleType, true, -60), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -60))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).requestedQuantities, Some(class scala.collection.mutable.ArraySeq)), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).outboundUnit)), createexternalrow(mapobjects(lambdavariable(MapObject, DoubleType, true, -61), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -61))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockBatchQuantities, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -62), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -62))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockBatchShelfLifeEndDatetimes, Some(class scala.collection.mutable.ArraySeq)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).stock.stockDatetime)), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true)), createexternalrow(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandChannel.toString()), invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandStream.toString()), static_invoke(java.lang.Boolean.valueOf(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).considerVariance)), mapobjects(lambdavariable(MapObject, DoubleType, true, -64), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -64))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandValues, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -65), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -65))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).demandVariances, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -66), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -66))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -67), invoke(lambdavariable(MapObject, StringType, true, -67).toString()), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorWeekdays, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, IntegerType, true, -68), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, IntegerType, true, -68))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -63).anchorIndices, Some(class scala.collection.mutable.ArraySeq)), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).demand.dayBucketDemands, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandChannel.toString()), invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandStream.toString()), static_invoke(java.lang.Boolean.valueOf(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).considerVariance)), mapobjects(lambdavariable(MapObject, TimestampType, true, -70), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -70))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -71), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -71))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandValues, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -72), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -72))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).demandVariances, Some(class scala.collection.mutable.ArraySeq)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).horizonStartDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -69).horizonEndDatetime)), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).demand.pointInTimeDemands, Some(class scala.collection.mutable.ArraySeq)), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)), createexternalrow(static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.orderDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.availabilityDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.demandPeriodEndDatetime)), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).schedule.shelfLifeEndDatetime)), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false)), createexternalrow(mapobjects(lambdavariable(MapObject, TimestampType, true, -73), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -73))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.orderDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -74), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -74))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.availabilityDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -75), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -75))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.quantities, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -76), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -76))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).openGoodsMovements.shelfLifeEndDatetimes, Some(class scala.collection.mutable.ArraySeq)), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)), createexternalrow(mapobjects(lambdavariable(MapObject, TimestampType, true, -77), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -77))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.endDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -78), invoke(lambdavariable(MapObject, StringType, true, -78).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.names, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, TimestampType, true, -79), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -79))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.startDatetimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, DoubleType, true, -80), static_invoke(java.lang.Double.valueOf(lambdavariable(MapObject, DoubleType, true, -80))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).timeDependentSettings.values, Some(class scala.collection.mutable.ArraySeq)), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true)), createexternalrow(mapobjects(lambdavariable(MapObject, StringType, true, -81), invoke(lambdavariable(MapObject, StringType, true, -81).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).configuration.names, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StringType, true, -82), invoke(lambdavariable(MapObject, StringType, true, -82).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -59).configuration.values, Some(class scala.collection.mutable.ArraySeq)), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false)), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)), prodPlantQuantityInformation#21468448, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83), if (isnull(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83))) null else createexternalrow(invoke(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).plantId.toString()), mapobjects(lambdavariable(MapObject, IntegerType, false, -84), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, IntegerType, false, -84))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).weekdays, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85), createexternalrow(static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).hour)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).minute)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -85).second)), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true)), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).openingTimes, Some(class scala.collection.mutable.ArraySeq)), mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86), createexternalrow(static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).hour)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).minute)), static_invoke(java.lang.Integer.valueOf(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -86).second)), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true)), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -83).closingTimes, Some(class scala.collection.mutable.ArraySeq)), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)), plantOperatingTimesArray#21468449, Some(class scala.collection.mutable.ArraySeq)), StructField(executionID,IntegerType,false), StructField(prodPlantQuantityInformation,ArrayType(StructType(StructField(productId,StringType,true),StructField(plantId,StringType,true),StructField(requestedQuantities,ArrayType(DoubleType,true),false),StructField(outboundUnit,DoubleType,true),StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false),StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false),StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false),StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false),StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false),StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)),false),false), StructField(plantOperatingTimesArray,ArrayType(StructType(StructField(plantId,StringType,true),StructField(weekdays,ArrayType(IntegerType,false),false),StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true),StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)),true),false)), obj#21468456: org.apache.spark.sql.Row
(76) MapPartitions
Input [1]: [obj#21468456]
Arguments: org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x0000000801c396e8@7b2d3f22, obj#21468460: org.apache.spark.sql.Row
(77) SerializeFromObject [codegen id : 19]
Input [1]: [obj#21468460]
Arguments: [assertnotnull(invoke(validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 0, executionID), IntegerType, ObjectType(class java.lang.Integer)).intValue())) AS executionID#21468464, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(productId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 0, productId), StringType, ObjectType(class java.lang.String)))), plantId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 1, plantId), StringType, ObjectType(class java.lang.String)))), requestedQuantities, if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -32), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -32), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 2, requestedQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), outboundUnit, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 3, outboundUnit), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), stock, named_struct(stockBatchQuantities, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -33), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -33), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, stockBatchQuantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), stockBatchShelfLifeEndDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -34), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -34), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, stockBatchShelfLifeEndDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), stockDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 4, stock), StructField(stockBatchQuantities,ArrayType(DoubleType,true),true), StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true), StructField(stockDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, stockDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), demand, named_struct(dayBucketDemands, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(demandChannel, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, demandChannel), StringType, ObjectType(class java.lang.String)))), demandStream, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, demandStream), StringType, ObjectType(class java.lang.String)))), considerVariance, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, considerVariance), BooleanType, ObjectType(class java.lang.Boolean)).booleanValue()), demandValues, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -36), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -36), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), demandVariances, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -37), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -37), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), anchorDatetimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(5))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -38), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -38), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 5, anchorDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), anchorWeekdays, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(6))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -39), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -39), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 6, anchorWeekdays), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), anchorIndices, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(7))) null else if (invoke(class [I.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -40), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -40), IntegerType, ObjectType(class java.lang.Integer)).intValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -35), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 7, anchorIndices), ArrayType(IntegerType,true), ObjectType(class java.lang.Object)), None)), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, dayBucketDemands), ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true), ObjectType(class java.lang.Object)), None), pointInTimeDemands, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(demandChannel, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, demandChannel), StringType, ObjectType(class java.lang.String)))), demandStream, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, demandStream), StringType, ObjectType(class java.lang.String)))), considerVariance, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, considerVariance), BooleanType, ObjectType(class java.lang.Boolean)).booleanValue()), demandDatetimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -42), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -42), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 3, demandDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), demandValues, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(4))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -43), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -43), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 4, demandValues), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), demandVariances, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(5))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -44), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -44), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 5, demandVariances), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), horizonStartDatetime, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(6))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 6, horizonStartDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), horizonEndDatetime, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(7))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -41), StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), ObjectType(interface org.apache.spark.sql.Row)), 7, horizonEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 5, demand), StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true), StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, pointInTimeDemands), ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true), ObjectType(class java.lang.Object)), None)), schedule, named_struct(orderDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 0, orderDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), availabilityDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 1, availabilityDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), demandPeriodEndDatetime, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 2, demandPeriodEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp)))), shelfLifeEndDatetime, static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 6, schedule), StructField(orderDatetime,TimestampType,true), StructField(availabilityDatetime,TimestampType,true), StructField(demandPeriodEndDatetime,TimestampType,true), StructField(shelfLifeEndDatetime,TimestampType,false), ObjectType(interface org.apache.spark.sql.Row)), 3, shelfLifeEndDatetime), TimestampType, ObjectType(class java.sql.Timestamp))))), openGoodsMovements, named_struct(orderDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -45), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -45), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, orderDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), availabilityDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -46), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -46), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, availabilityDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), quantities, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -47), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -47), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, quantities), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None), shelfLifeEndDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -48), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -48), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 7, openGoodsMovements), StructField(orderDatetimes,ArrayType(TimestampType,true),true), StructField(availabilityDatetimes,ArrayType(TimestampType,true),true), StructField(quantities,ArrayType(DoubleType,true),true), StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, shelfLifeEndDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None)), timeDependentSettings, named_struct(endDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -49), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -49), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 0, endDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), names, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -50), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -50), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 1, names), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), startDatetimes, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -51), static_invoke(DateTimeUtils.fromJavaTimestamp(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -51), TimestampType, ObjectType(class java.sql.Timestamp)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 2, startDatetimes), ArrayType(TimestampType,true), ObjectType(class java.lang.Object)), None), values, if (invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else if (invoke(class [D.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -52), invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -52), DoubleType, ObjectType(class java.lang.Double)).doubleValue()), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 8, timeDependentSettings), StructField(endDatetimes,ArrayType(TimestampType,true),true), StructField(names,ArrayType(StringType,true),true), StructField(startDatetimes,ArrayType(TimestampType,true),true), StructField(values,ArrayType(DoubleType,true),true), ObjectType(interface org.apache.spark.sql.Row)), 3, values), ArrayType(DoubleType,true), ObjectType(class java.lang.Object)), None)), configuration, named_struct(names, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -53), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -53), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 9, configuration), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false), ObjectType(interface org.apache.spark.sql.Row)), 0, names), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None), values, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -54), static_invoke(UTF8String.fromString(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -54), StringType, ObjectType(class java.lang.String)))), validateexternaltype(getexternalrowfield(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -31), StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), ObjectType(interface org.apache.spark.sql.Row)), 9, configuration), StructField(names,ArrayType(StringType,true),false), StructField(values,ArrayType(StringType,true),false), ObjectType(interface org.apache.spark.sql.Row)), 1, values), ArrayType(StringType,true), ObjectType(class java.lang.Object)), None)))), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 1, prodPlantQuantityInformation), ArrayType(StructType(StructField(productId,StringType,true),StructField(plantId,StringType,true),StructField(requestedQuantities,ArrayType(DoubleType,true),false),StructField(outboundUnit,DoubleType,true),StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false),StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false),StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false),StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false),StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false),StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false)),false), ObjectType(class java.lang.Object)), None) AS prodPlantQuantityInformation#21468465, mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(plantId, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else static_invoke(UTF8String.fromString(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 0, plantId), StringType, ObjectType(class java.lang.String)))), weekdays, if (invoke(class [I.isInstance(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object))))) static_invoke(ArrayData.toArrayData(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object)))) else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -56), assertnotnull(invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -56), IntegerType, ObjectType(class java.lang.Integer)).intValue())), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 1, weekdays), ArrayType(IntegerType,false), ObjectType(class java.lang.Object)), None), openingTimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(hour, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, hour), IntegerType, ObjectType(class java.lang.Integer)).intValue()), minute, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, minute), IntegerType, ObjectType(class java.lang.Integer)).intValue()), second, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -57), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, second), IntegerType, ObjectType(class java.lang.Integer)).intValue()))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 2, openingTimes), ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false), ObjectType(class java.lang.Object)), None), closingTimes, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(3))) null else mapobjects(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), assertnotnull(if (isnull(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)))) null else named_struct(hour, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(0))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 0, hour), IntegerType, ObjectType(class java.lang.Integer)).intValue()), minute, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(1))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 1, minute), IntegerType, ObjectType(class java.lang.Integer)).intValue()), second, if (invoke(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)).isNullAt(2))) null else invoke(validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -58), StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), ObjectType(interface org.apache.spark.sql.Row)), 2, second), IntegerType, ObjectType(class java.lang.Integer)).intValue()))), validateexternaltype(getexternalrowfield(validateexternaltype(lambdavariable(MapObject, ObjectType(class java.lang.Object), true, -55), StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), ObjectType(interface org.apache.spark.sql.Row)), 3, closingTimes), ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false), ObjectType(class java.lang.Object)), None)), validateexternaltype(getexternalrowfield(assertnotnull(input[0, org.apache.spark.sql.Row, true]), 2, plantOperatingTimesArray), ArrayType(StructType(StructField(plantId,StringType,true),StructField(weekdays,ArrayType(IntegerType,false),false),StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true),StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true)),true), ObjectType(class java.lang.Object)), None) AS plantOperatingTimesArray#21468466]
(78) InMemoryTableScan
Output: []
(79) InMemoryRelation
Arguments: [shardId#21468467, worklistShardItemId#21468468L, version#21468469, product#21468470, plant#21468471, periodStart#21468472, periodEnd#21468473, qty#21468474], StorageLevel(disk, memory, 2 replicas)
(80) HashAggregate [codegen id : 17]
Input: []
Keys [1]: [1 AS 1#21469249]
Functions: []
Aggregate Attributes: []
Results [1]: [1#21469249]
(81) Exchange
Input [1]: [1#21469249]
Arguments: hashpartitioning(1#21469249, 20), ENSURE_REQUIREMENTS, [plan_id=21236141]
(82) HashAggregate [codegen id : 18]
Input [1]: [1#21469249]
Keys [1]: [1#21469249]
Functions: []
Aggregate Attributes: []
Results [1]: [[[Performance.AFLMeasurementActive,StockProbabilities.RemoveProportion.Cache.BernsteinPrecision,StockProbabilities.RemoveProportion.Cache.PoissonPrecision,Candidates.InitialCandidateFactors],[0,100,50,0.0, 0.5, 1.0, 1.5, 2.0, 50.0]] AS configuration#21468400]
(83) BroadcastExchange
Input [1]: [configuration#21468400]
Arguments: IdentityBroadcastMode, [plan_id=21236145]
(84) BroadcastNestedLoopJoin [codegen id : 19]
Join type: Cross
Join condition: None
(85) DeserializeToObject
Input [4]: [executionID#21468464, prodPlantQuantityInformation#21468465, plantOperatingTimesArray#21468466, configuration#21468400]
Arguments: initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument), (setConfiguration,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Configuration), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -1), invoke(lambdavariable(MapObject, StringType, false, -1).toString()), configuration#21468400.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#21468400.values, None).array())))), (setExecutionID,executionID#21468464), (setPlantOperatingTimesArray,invoke(mapobjects(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3), if (isnull(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PlantOperatingTimes), (setClosingTimes,invoke(mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeOfDay), (setHour,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).hour)), (setMinute,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).minute)), (setSecond,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -4).second))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).closingTimes, None).array())), (setOpeningTimes,invoke(mapobjects(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeOfDay), (setHour,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).hour)), (setMinute,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).minute)), (setSecond,assertnotnull(lambdavariable(MapObject, StructField(hour,IntegerType,true), StructField(minute,IntegerType,true), StructField(second,IntegerType,true), false, -5).second))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).openingTimes, None).array())), (setPlantId,invoke(lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).plantId.toString())), (setWeekdays,invoke(mapobjects(lambdavariable(MapObject, IntegerType, false, -6), static_invoke(java.time.DayOfWeek.valueOf(invoke(cast(lambdavariable(MapObject, IntegerType, false, -6) as string).toString()))), lambdavariable(MapObject, StructField(plantId,StringType,true), StructField(weekdays,ArrayType(IntegerType,false),false), StructField(openingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), StructField(closingTimes,ArrayType(StructType(StructField(hour,IntegerType,true),StructField(minute,IntegerType,true),StructField(second,IntegerType,true)),false),true), true, -3).weekdays, None).array()))), plantOperatingTimesArray#21468466, None).array())), (setProdPlantQuantityInformation,invoke(mapobjects(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7), initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.ProdPlantQuantityInformation), (setDemand,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Demand), (setDayBucketDemands,invoke(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.DayBucketDemand), (setAnchorIndices,invoke(mapobjects(lambdavariable(MapObject, IntegerType, true, -9), assertnotnull(lambdavariable(MapObject, IntegerType, true, -9)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorIndices, None).toIntArray())), (setConsiderVariance,assertnotnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).considerVariance)), (setAnchorDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -10), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -10))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorDatetimes, None).array())), (setDemandChannel,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandChannel.toString())), (setDemandStream,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandStream.toString())), (setAnchorWeekdays,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -11), static_invoke(java.time.DayOfWeek.valueOf(invoke(lambdavariable(MapObject, StringType, true, -11).toString()))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).anchorWeekdays, None).array())), (setDemandVariances,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -12), assertnotnull(lambdavariable(MapObject, DoubleType, true, -12)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandVariances, None).toDoubleArray())), (setDemandValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -13), assertnotnull(lambdavariable(MapObject, DoubleType, true, -13)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(anchorDatetimes,ArrayType(TimestampType,true),true), StructField(anchorWeekdays,ArrayType(StringType,true),true), StructField(anchorIndices,ArrayType(IntegerType,true),true), true, -8).demandValues, None).toDoubleArray()))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).demand.dayBucketDemands, None).array())), (setPointInTimeDemands,invoke(mapobjects(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14), if (isnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14))) null else initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.PointInTimeDemand), (setHorizonStartDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).horizonStartDatetime))), (setDemandDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -15), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -15))), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandDatetimes, None).array())), (setDemandStream,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandStream.toString())), (setConsiderVariance,assertnotnull(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).considerVariance)), (setDemandChannel,invoke(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandChannel.toString())), (setHorizonEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).horizonEndDatetime))), (setDemandVariances,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -16), assertnotnull(lambdavariable(MapObject, DoubleType, true, -16)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandVariances, None).toDoubleArray())), (setDemandValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -17), assertnotnull(lambdavariable(MapObject, DoubleType, true, -17)), lambdavariable(MapObject, StructField(demandChannel,StringType,true), StructField(demandStream,StringType,true), StructField(considerVariance,BooleanType,true), StructField(demandDatetimes,ArrayType(TimestampType,true),true), StructField(demandValues,ArrayType(DoubleType,true),true), StructField(demandVariances,ArrayType(DoubleType,true),true), StructField(horizonStartDatetime,TimestampType,true), StructField(horizonEndDatetime,TimestampType,true), true, -14).demandValues, None).toDoubleArray()))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).demand.pointInTimeDemands, None).array())))), (setSchedule,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Schedule), (setAvailabilityDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.availabilityDatetime))), (setDemandPeriodEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.demandPeriodEndDatetime))), (setOrderDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.orderDatetime))), (setShelfLifeEndDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).schedule.shelfLifeEndDatetime))))), (setPlantId,invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).plantId.toString())), (setRequestedQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -18), assertnotnull(lambdavariable(MapObject, DoubleType, true, -18)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).requestedQuantities, None).toDoubleArray())), (setConfiguration,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Configuration), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -19), invoke(lambdavariable(MapObject, StringType, true, -19).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).configuration.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -20), invoke(lambdavariable(MapObject, StringType, true, -20).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).configuration.values, None).array())))), (setProductId,invoke(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).productId.toString())), (setOpenGoodsMovements,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.OpenGoodsMovements), (setAvailabilityDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -21), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -21))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.availabilityDatetimes, None).array())), (setOrderDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -22), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -22))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.orderDatetimes, None).array())), (setQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -23), assertnotnull(lambdavariable(MapObject, DoubleType, true, -23)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.quantities, None).toDoubleArray())), (setShelfLifeEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -24), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -24))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).openGoodsMovements.shelfLifeEndDatetimes, None).array())))), (setStock,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.Stock), (setStockBatchQuantities,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -25), assertnotnull(lambdavariable(MapObject, DoubleType, true, -25)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockBatchQuantities, None).toDoubleArray())), (setStockBatchShelfLifeEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -26), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -26))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockBatchShelfLifeEndDatetimes, None).array())), (setStockDatetime,static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).stock.stockDatetime))))), (setTimeDependentSettings,initializejavabean(newInstance(class com.sap.s4hana.eureka.business.crporderquantitykpicalculation.dto.TimeDependentSettings), (setEndDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -27), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -27))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.endDatetimes, None).array())), (setNames,invoke(mapobjects(lambdavariable(MapObject, StringType, true, -28), invoke(lambdavariable(MapObject, StringType, true, -28).toString()), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.names, None).array())), (setStartDatetimes,invoke(mapobjects(lambdavariable(MapObject, TimestampType, true, -29), static_invoke(DateTimeUtils.toJavaTimestamp(lambdavariable(MapObject, TimestampType, true, -29))), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.startDatetimes, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, DoubleType, true, -30), assertnotnull(lambdavariable(MapObject, DoubleType, true, -30)), lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).timeDependentSettings.values, None).toDoubleArray())))), (setOutboundUnit,assertnotnull(lambdavariable(MapObject, StructField(productId,StringType,true), StructField(plantId,StringType,true), StructField(requestedQuantities,ArrayType(DoubleType,true),false), StructField(outboundUnit,DoubleType,true), StructField(stock,StructType(StructField(stockBatchQuantities,ArrayType(DoubleType,true),true),StructField(stockBatchShelfLifeEndDatetimes,ArrayType(TimestampType,true),true),StructField(stockDatetime,TimestampType,true)),false), StructField(demand,StructType(StructField(dayBucketDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(anchorDatetimes,ArrayType(TimestampType,true),true),StructField(anchorWeekdays,ArrayType(StringType,true),true),StructField(anchorIndices,ArrayType(IntegerType,true),true)),true),true),StructField(pointInTimeDemands,ArrayType(StructType(StructField(demandChannel,StringType,true),StructField(demandStream,StringType,true),StructField(considerVariance,BooleanType,true),StructField(demandDatetimes,ArrayType(TimestampType,true),true),StructField(demandValues,ArrayType(DoubleType,true),true),StructField(demandVariances,ArrayType(DoubleType,true),true),StructField(horizonStartDatetime,TimestampType,true),StructField(horizonEndDatetime,TimestampType,true)),true),true)),false), StructField(schedule,StructType(StructField(orderDatetime,TimestampType,true),StructField(availabilityDatetime,TimestampType,true),StructField(demandPeriodEndDatetime,TimestampType,true),StructField(shelfLifeEndDatetime,TimestampType,false)),false), StructField(openGoodsMovements,StructType(StructField(orderDatetimes,ArrayType(TimestampType,true),true),StructField(availabilityDatetimes,ArrayType(TimestampType,true),true),StructField(quantities,ArrayType(DoubleType,true),true),StructField(shelfLifeEndDatetimes,ArrayType(TimestampType,true),true)),false), StructField(timeDependentSettings,StructType(StructField(endDatetimes,ArrayType(TimestampType,true),true),StructField(names,ArrayType(StringType,true),true),StructField(startDatetimes,ArrayType(TimestampType,true),true),StructField(values,ArrayType(DoubleType,true),true)),false), StructField(configuration,StructType(StructField(names,ArrayType(StringType,true),false),StructField(values,ArrayType(StringType,true),false)),false), false, -7).outboundUnit))), prodPlantQuantityInformation#21468465, None).array()))), obj#21468492: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument