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#6686161.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#6686161.values, None).array())))), (setExecutionID,executionID#6686225), (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#6686227, 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#6686226, None).array()))), obj#6686253: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument"];
subgraph cluster1 {
isCluster="true";
id="cluster1";
label="WholeStageCodegen (26)";
tooltip="WholeStageCodegen (26)";
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#6686225, 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#6686226, 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#6686227]"];
}
4 [id="node4" labelType="html" label="<br><b>MapPartitions</b><br><br>" tooltip="MapPartitions org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x000000080297efb0@6f022356, obj#6686221: 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#6686208)), 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#6686209, 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#6686210, 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#6686217: org.apache.spark.sql.Row"];
subgraph cluster6 {
isCluster="true";
id="cluster6";
label="WholeStageCodegen (23)";
tooltip="WholeStageCodegen (23)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [executionID#6686208, array(ProductPlantQuantityInformation#6686207) AS prodPlantQuantityInformation#6686209, array(plantOperatingTimes#6685413) AS plantOperatingTimesArray#6686210]"];
8 [id="node8" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [plantOperatingTimes#6685413, struct(productId, product#6685414, plantId, plant#6685415, requestedQuantities, requestedQuantities#6686163, outboundUnit, outboundUnit#6685416, stock, struct(stockBatchQuantities, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#6685419, stockDatetime, stockDatetime#6685417), demand, struct(dayBucketDemands, dayBucketDemands#6685420, pointInTimeDemands, pointInTimeDemands#6685421), schedule, schedule#6685994, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#6685986) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementOrderDatetimes#6685986 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#6685987) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementAvailabilityDatetimes#6685987 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#6685988) THEN openGoodsMovementQuantities#6685988 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#6685989) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementShelfLifeEndDatetimes#6685989 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#6685428, names, timeDependentSettingsName#6685426, startDatetimes, timeDependentSettingsStartDatetime#6685427, values, timeDependentSettingsValue#6685429), configuration, configuration#6686151) AS ProductPlantQuantityInformation#6686207, SPARK_PARTITION_ID() AS executionID#6686208]"];
9 [id="node9" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#6685414, plant#6685415], [product#6686184, plant#6686185], Inner"];
}
subgraph cluster10 {
isCluster="true";
id="cluster10";
label="WholeStageCodegen (19)";
tooltip="WholeStageCodegen (19)";
11 [id="node11" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST], false, 0"];
}
12 [id="node12" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6685414, plant#6685415, 30), ENSURE_REQUIREMENTS, [plan_id=28994815]"];
13 [id="node13" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, struct(names, transform(configurations#6686124, lambdafunction(lambda x#6686152.explodedConf.configurationName, lambda x#6686152, false)), values, transform(configurations#6686124, lambdafunction(lambda x#6686153.explodedConf.configurationValue, lambda x#6686153, false))) AS configuration#6686151]"];
14 [id="node14" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994], functions=[collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)])"];
15 [id="node15" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, 30), ENSURE_REQUIREMENTS, [plan_id=28994812]"];
16 [id="node16" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000532 AS 0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#6685416)) AS outboundUnit#6685416, knownfloatingpointnormalized(transform(stockBatchQuantities#6685418, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687200)), lambda arg#6687200, false))) AS stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, knownfloatingpointnormalized(transform(dayBucketDemands#6685420, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#6687201)) null else named_struct(demandChannel, lambda arg#6687201.demandChannel, demandStream, lambda arg#6687201.demandStream, considerVariance, lambda arg#6687201.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#6687201.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687202)), lambda arg#6687202, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#6687201.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687203)), lambda arg#6687203, false))), anchorDatetimes, lambda arg#6687201.anchorDatetimes, anchorWeekdays, lambda arg#6687201.anchorWeekdays, anchorIndices, lambda arg#6687201.anchorIndices)), lambda arg#6687201, false))) AS dayBucketDemands#6685420, knownfloatingpointnormalized(transform(pointInTimeDemands#6685421, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#6687204)) null else named_struct(demandChannel, lambda arg#6687204.demandChannel, demandStream, lambda arg#6687204.demandStream, considerVariance, lambda arg#6687204.considerVariance, demandDatetimes, lambda arg#6687204.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#6687204.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687205)), lambda arg#6687205, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#6687204.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687206)), lambda arg#6687206, false))), horizonStartDatetime, lambda arg#6687204.horizonStartDatetime, horizonEndDatetime, lambda arg#6687204.horizonEndDatetime)), lambda arg#6687204, false))) AS pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#6685988, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687207)), lambda arg#6687207, false))) AS openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, knownfloatingpointnormalized(transform(timeDependentSettingsValue#6685429, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687208)), lambda arg#6687208, false))) AS timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994], functions=[partial_collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)])"];
subgraph cluster17 {
isCluster="true";
id="cluster17";
label="WholeStageCodegen (18)";
tooltip="WholeStageCodegen (18)";
18 [id="node18" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996]"];
19 [id="node19" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [distance#6686001L, product#6685414, plant#6685415, configurationName#6685997], [minDistance#6686003L, product#6686062, plant#6686063, configurationName#6686119], Inner"];
}
subgraph cluster20 {
isCluster="true";
id="cluster20";
label="WholeStageCodegen (9)";
tooltip="WholeStageCodegen (9)";
21 [id="node21" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [distance#6686001L ASC NULLS FIRST, product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST, configurationName#6685997 ASC NULLS FIRST], false, 0"];
}
22 [id="node22" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(distance#6686001L, product#6685414, plant#6685415, configurationName#6685997, 30), ENSURE_REQUIREMENTS, [plan_id=28994759]"];
subgraph cluster23 {
isCluster="true";
id="cluster23";
label="WholeStageCodegen (8)";
tooltip="WholeStageCodegen (8)";
24 [id="node24" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996, explodedConf#6685996.configurationName AS configurationName#6685997, (cast(schedule#6685994.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END) AS distance#6686001L]"];
25 [id="node25" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END <= cast(schedule#6685994.orderDatetime as bigint)) AND isnotnull((cast(schedule#6685994.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#6685996.configurationName))"];
26 [id="node26" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#6685425), [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994], true, [confPos#6685995, explodedConf#6685996]"];
27 [id="node27" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, struct(orderDatetime, stockDatetime#6685417, availabilityDatetime, periodStart#6552502, demandPeriodEndDatetime, periodEnd#6552503, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#6685994]"];
28 [id="node28" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#6685414, plant#6685415], [product#6552500, plant#6552501], Inner"];
}
subgraph cluster29 {
isCluster="true";
id="cluster29";
label="WholeStageCodegen (6)";
tooltip="WholeStageCodegen (6)";
30 [id="node30" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, coalesce(concat(openGoodsMovementAvailabilityDatetimes#6685423, aggAvailabilityDateTimes#6685970), openGoodsMovementAvailabilityDatetimes#6685423) AS openGoodsMovementAvailabilityDatetimes#6685987, coalesce(concat(openGoodsMovementQuantities#6685422, aggQuantities#6685971), openGoodsMovementQuantities#6685422) AS openGoodsMovementQuantities#6685988, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#6685424, aggShelfLifeEndDateTimes#6685972), openGoodsMovementShelfLifeEndDatetimes#6685424) AS openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, coalesce(concat(openGoodsMovementOrderDatetimes#6685450, aggOrderDateTimes#6685969), openGoodsMovementOrderDatetimes#6685450) AS openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413]"];
31 [id="node31" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#6685414, plant#6685415], [product#6685664, plant#6685665], LeftOuter"];
}
subgraph cluster32 {
isCluster="true";
id="cluster32";
label="WholeStageCodegen (2)";
tooltip="WholeStageCodegen (2)";
33 [id="node33" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST], false, 0"];
34 [id="node34" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementQuantities#6685422, openGoodsMovementShelfLifeEndDatetimes#6685424, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementAvailabilityDatetimes#6685423 AS openGoodsMovementOrderDatetimes#6685450, cast(struct(plantId, plant#6685415, 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#6685413]"];
}
35 [id="node35" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6685414, plant#6685415, 30), REPARTITION_BY_NUM, [plan_id=28994722]"];
subgraph cluster36 {
isCluster="true";
id="cluster36";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
37 [id="node37" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#6685414) AND isnotnull(plant#6685415)) AND isnotnull(stockDatetime#6685417))"];
38 [id="node38" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
39 [id="node39" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 37<br>metadata time: 0 ms<br>size of files read: 3.2 MiB" tooltip="FileScan parquet [product#6685414,plant#6685415,outboundUnit#6685416,stockDatetime#6685417,stockBatchQuantities#6685418,stockBatchShelfLifeEndDatetimes#6685419,dayBucketDemands#6685420,pointInTimeDemands#6685421,openGoodsMovementQuantities#6685422,openGoodsMovementAvailabilityDatetimes#6685423,openGoodsMovementShelfLifeEndDatetimes#6685424,configuration#6685425,timeDependentSettingsName#6685426,timeDependentSettingsStartDatetime#6685427,timeDependentSettingsEndDatetime#6685428,timeDependentSettingsValue#6685429] Batched: true, DataFilters: [isnotnull(product#6685414), isnotnull(plant#6685415), isnotnull(stockDatetime#6685417)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,outboundUnit:double,stockDatetime:timestamp,stockBatchQuantiti..."];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (5)";
tooltip="WholeStageCodegen (5)";
41 [id="node41" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6685664 ASC NULLS FIRST, plant#6685665 ASC NULLS FIRST], false, 0"];
}
42 [id="node42" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[shardId#6685663, product#6685664, plant#6685665], functions=[collect_list(orderDatetime#6685666, 0, 0), collect_list(availabilityDatetime#6685668, 0, 0), collect_list(orderQuantityInBaseUnit#6685669, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)])"];
43 [id="node43" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[shardId#6685663, product#6685664, plant#6685665], functions=[partial_collect_list(orderDatetime#6685666, 0, 0), partial_collect_list(availabilityDatetime#6685668, 0, 0), partial_collect_list(orderQuantityInBaseUnit#6685669, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)])"];
subgraph cluster44 {
isCluster="true";
id="cluster44";
label="WholeStageCodegen (4)";
tooltip="WholeStageCodegen (4)";
45 [id="node45" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664], functions=[])"];
46 [id="node46" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#6685669)) AS orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664], functions=[])"];
}
47 [id="node47" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6685664, plant#6685665, 30), REPARTITION_BY_NUM, [plan_id=28994732]"];
subgraph cluster48 {
isCluster="true";
id="cluster48";
label="WholeStageCodegen (3)";
tooltip="WholeStageCodegen (3)";
49 [id="node49" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((isnotnull(shardId#6685663) AND (0_1_10000000532 = shardId#6685663)) AND isnotnull(product#6685664)) AND isnotnull(plant#6685665))"];
50 [id="node50" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
51 [id="node51" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 90<br>metadata time: 0 ms<br>size of files read: 9.9 MiB" tooltip="FileScan parquet [shardId#6685663,product#6685664,plant#6685665,orderDateTime#6685666,deliveryDateTime#6685667,availabilityDateTime#6685668,orderQuantityInBaseUnit#6685669,orderProposalId#6685670L] Batched: true, DataFilters: [isnotnull(shardId#6685663), (0_1_10000000532 = shardId#6685663), isnotnull(product#6685664), isn..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000532), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string,orderDateTime:timestamp,deliveryDateTime:timest..."];
subgraph cluster52 {
isCluster="true";
id="cluster52";
label="WholeStageCodegen (7)";
tooltip="WholeStageCodegen (7)";
53 [id="node53" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6552500 ASC NULLS FIRST, plant#6552501 ASC NULLS FIRST], false, 0"];
54 [id="node54" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503]"];
55 [id="node55" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((isnotnull(shardId#6552497) AND (0_1_10000000532 = shardId#6552497)) AND isnotnull(product#6552500)) AND isnotnull(plant#6552501))"];
}
56 [id="node56" labelType="html" label="<br><b>InMemoryTableScan</b><br><br>" tooltip="InMemoryTableScan [periodEnd#6552503, periodStart#6552502, plant#6552501, product#6552500, shardId#6552497], [isnotnull(shardId#6552497), (0_1_10000000532 = shardId#6552497), isnotnull(product#6552500), isnotnull(plant#6552501)]"];
57 [id="node57" 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#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]"];
subgraph cluster58 {
isCluster="true";
id="cluster58";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
59 [id="node59" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#6552497,worklistShardItemId#6552498L,version#6552499,product#6552500,plant#6552501,periodStart#6552502,periodEnd#6552503,qty#6552504]"];
}
subgraph cluster60 {
isCluster="true";
id="cluster60";
label="WholeStageCodegen (17)";
tooltip="WholeStageCodegen (17)";
61 [id="node61" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [minDistance#6686003L ASC NULLS FIRST, product#6686062 ASC NULLS FIRST, plant#6686063 ASC NULLS FIRST, configurationName#6686119 ASC NULLS FIRST], false, 0"];
}
62 [id="node62" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(minDistance#6686003L, product#6686062, plant#6686063, configurationName#6686119, 30), ENSURE_REQUIREMENTS, [plan_id=28994803]"];
subgraph cluster63 {
isCluster="true";
id="cluster63";
label="WholeStageCodegen (16)";
tooltip="WholeStageCodegen (16)";
64 [id="node64" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter isnotnull(minDistance#6686003L)"];
65 [id="node65" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#6686062, plant#6686063, configurationName#6686119], functions=[min(distance#6686121L)])"];
66 [id="node66" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#6686062, plant#6686063, configurationName#6686119], functions=[partial_min(distance#6686121L)])"];
67 [id="node67" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6686062, plant#6686063, explodedConf#6686118.configurationName AS configurationName#6686119, (cast(schedule#6686116.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6686118.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6686118.configurationValidityDatetime as bigint) END) AS distance#6686121L]"];
68 [id="node68" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((CASE WHEN isnull(explodedConf#6686118.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6686118.configurationValidityDatetime as bigint) END <= cast(schedule#6686116.orderDatetime as bigint)) AND isnotnull(explodedConf#6686118.configurationName))"];
69 [id="node69" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#6686073), [product#6686062, plant#6686063, schedule#6686116], true, [confPos#6686117, explodedConf#6686118]"];
70 [id="node70" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6686062, plant#6686063, configuration#6686073, struct(orderDatetime, stockDatetime#6686065, availabilityDatetime, periodStart#6686112, demandPeriodEndDatetime, periodEnd#6686113, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#6686116]"];
71 [id="node71" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#6686062, plant#6686063], [product#6686110, plant#6686111], Inner"];
}
subgraph cluster72 {
isCluster="true";
id="cluster72";
label="WholeStageCodegen (14)";
tooltip="WholeStageCodegen (14)";
73 [id="node73" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]"];
74 [id="node74" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#6686062, plant#6686063], [product#6686091, plant#6686092], LeftOuter"];
}
subgraph cluster75 {
isCluster="true";
id="cluster75";
label="WholeStageCodegen (11)";
tooltip="WholeStageCodegen (11)";
76 [id="node76" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6686062 ASC NULLS FIRST, plant#6686063 ASC NULLS FIRST], false, 0"];
}
77 [id="node77" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6686062, plant#6686063, 30), REPARTITION_BY_NUM, [plan_id=28994768]"];
subgraph cluster78 {
isCluster="true";
id="cluster78";
label="WholeStageCodegen (10)";
tooltip="WholeStageCodegen (10)";
79 [id="node79" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#6686062) AND isnotnull(plant#6686063)) AND isnotnull(stockDatetime#6686065))"];
80 [id="node80" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
81 [id="node81" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 37<br>metadata time: 119 ms<br>size of files read: 3.2 MiB" tooltip="FileScan parquet [product#6686062,plant#6686063,stockDatetime#6686065,configuration#6686073] Batched: true, DataFilters: [isnotnull(product#6686062), isnotnull(plant#6686063), isnotnull(stockDatetime#6686065)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,stockDatetime:timestamp,configuration:array<struct<configurati..."];
subgraph cluster82 {
isCluster="true";
id="cluster82";
label="WholeStageCodegen (13)";
tooltip="WholeStageCodegen (13)";
83 [id="node83" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6686091 ASC NULLS FIRST, plant#6686092 ASC NULLS FIRST], false, 0"];
84 [id="node84" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[shardId#6686090, product#6686091, plant#6686092], functions=[])"];
85 [id="node85" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[shardId#6686090, product#6686091, plant#6686092], functions=[])"];
}
86 [id="node86" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6686091, plant#6686092, 30), REPARTITION_BY_NUM, [plan_id=28994777]"];
subgraph cluster87 {
isCluster="true";
id="cluster87";
label="WholeStageCodegen (12)";
tooltip="WholeStageCodegen (12)";
88 [id="node88" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((isnotnull(shardId#6686090) AND (0_1_10000000532 = shardId#6686090)) AND isnotnull(product#6686091)) AND isnotnull(plant#6686092))"];
89 [id="node89" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
90 [id="node90" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 90<br>metadata time: 103 ms<br>size of files read: 9.9 MiB" tooltip="FileScan parquet [shardId#6686090,product#6686091,plant#6686092] Batched: true, DataFilters: [isnotnull(shardId#6686090), (0_1_10000000532 = shardId#6686090), isnotnull(product#6686091), isn..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000532), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string>"];
subgraph cluster91 {
isCluster="true";
id="cluster91";
label="WholeStageCodegen (15)";
tooltip="WholeStageCodegen (15)";
92 [id="node92" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6686110 ASC NULLS FIRST, plant#6686111 ASC NULLS FIRST], false, 0"];
93 [id="node93" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6686110, plant#6686111, periodStart#6686112, periodEnd#6686113]"];
94 [id="node94" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((isnotnull(shardId#6686107) AND (0_1_10000000532 = shardId#6686107)) AND isnotnull(product#6686110)) AND isnotnull(plant#6686111))"];
}
95 [id="node95" labelType="html" label="<br><b>InMemoryTableScan</b><br><br>" tooltip="InMemoryTableScan [periodEnd#6686113, periodStart#6686112, plant#6686111, product#6686110, shardId#6686107], [isnotnull(shardId#6686107), (0_1_10000000532 = shardId#6686107), isnotnull(product#6686110), isnotnull(plant#6686111)]"];
96 [id="node96" 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#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]"];
subgraph cluster97 {
isCluster="true";
id="cluster97";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
98 [id="node98" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#6552497,worklistShardItemId#6552498L,version#6552499,product#6552500,plant#6552501,periodStart#6552502,periodEnd#6552503,qty#6552504]"];
}
subgraph cluster99 {
isCluster="true";
id="cluster99";
label="WholeStageCodegen (22)";
tooltip="WholeStageCodegen (22)";
100 [id="node100" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#6686184 ASC NULLS FIRST, plant#6686185 ASC NULLS FIRST], false, 0"];
}
101 [id="node101" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#6686184, plant#6686185, 30), ENSURE_REQUIREMENTS, [plan_id=28994830]"];
102 [id="node102" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
103 [id="node103" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[product#6686184, plant#6686185], functions=[collect_list(qty#6686188, 0, 0)])"];
104 [id="node104" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[product#6686184, plant#6686185], functions=[partial_collect_list(qty#6686188, 0, 0)])"];
subgraph cluster105 {
isCluster="true";
id="cluster105";
label="WholeStageCodegen (20)";
tooltip="WholeStageCodegen (20)";
106 [id="node106" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(qty#6686188) AND isnotnull(product#6686184)) AND isnotnull(plant#6686185))"];
}
107 [id="node107" labelType="html" label="<br><b>InMemoryTableScan</b><br><br>" tooltip="InMemoryTableScan [product#6686184, plant#6686185, qty#6686188], [isnotnull(qty#6686188), isnotnull(product#6686184), isnotnull(plant#6686185)]"];
108 [id="node108" 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#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]"];
subgraph cluster109 {
isCluster="true";
id="cluster109";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
110 [id="node110" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#6552497,worklistShardItemId#6552498L,version#6552499,product#6552500,plant#6552501,periodStart#6552502,periodEnd#6552503,qty#6552504]"];
}
subgraph cluster111 {
isCluster="true";
id="cluster111";
label="WholeStageCodegen (21)";
tooltip="WholeStageCodegen (21)";
112 [id="node112" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#6686176, plant#6686177, [] AS requestedQuantities#6686162]"];
113 [id="node113" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnull(qty#6686180) AND isnotnull(product#6686176)) AND isnotnull(plant#6686177))"];
}
114 [id="node114" labelType="html" label="<br><b>InMemoryTableScan</b><br><br>" tooltip="InMemoryTableScan [plant#6686177, product#6686176, qty#6686180], [isnull(qty#6686180), isnotnull(product#6686176), isnotnull(plant#6686177)]"];
115 [id="node115" 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#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]"];
subgraph cluster116 {
isCluster="true";
id="cluster116";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
117 [id="node117" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#6552497,worklistShardItemId#6552498L,version#6552499,product#6552500,plant#6552501,periodStart#6552502,periodEnd#6552503,qty#6552504]"];
}
118 [id="node118" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 675 ms<br>number of output rows: 1<br>data size: 392.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=28994850]"];
subgraph cluster119 {
isCluster="true";
id="cluster119";
label="WholeStageCodegen (25)\n \nduration: total (min, med, max (stageId: taskId))\n215 ms (0 ms, 6 ms, 20 ms (stage 186777.0: task 2189447))";
tooltip="WholeStageCodegen (25)";
120 [id="node120" 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>26 ms (0 ms, 0 ms, 5 ms (stage 186777.0: task 2189443))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 186777.0: task 2189440))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1#6687223], functions=[])"];
}
121 [id="node121" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 30<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 30<br>local bytes read: 750.0 B<br>merged fetch fallback count: 0<br>local blocks read: 10<br>remote merged chunks fetched: 0<br>remote blocks read: 20<br>data size total (min, med, max (stageId: taskId))<br>480.0 B (16.0 B, 16.0 B, 16.0 B (stage 186776.0: task 2189420))<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>15 ms (0 ms, 0 ms, 0 ms (stage 186776.0: task 2189410))<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: 1500.0 B<br>number of partitions: 30<br>remote reqs duration: 7 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>2.2 KiB (75.0 B, 75.0 B, 75.0 B (stage 186776.0: task 2189420))" tooltip="Exchange hashpartitioning(1#6687223, 30), ENSURE_REQUIREMENTS, [plan_id=28994846]"];
subgraph cluster122 {
isCluster="true";
id="cluster122";
label="WholeStageCodegen (24)\n \nduration: total (min, med, max (stageId: taskId))\n2.2 s (1 ms, 56 ms, 171 ms (stage 186776.0: task 2189418))";
tooltip="WholeStageCodegen (24)";
123 [id="node123" 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>162 ms (0 ms, 6 ms, 10 ms (stage 186776.0: task 2189418))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 186776.0: task 2189420))<br>number of output rows: 30<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1 AS 1#6687223], functions=[])"];
}
124 [id="node124" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 87,939" tooltip="InMemoryTableScan"];
125 [id="node125" 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#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]"];
subgraph cluster126 {
isCluster="true";
id="cluster126";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
127 [id="node127" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#6552497,worklistShardItemId#6552498L,version#6552499,product#6552500,plant#6552501,periodStart#6552502,periodEnd#6552503,qty#6552504]"];
}
2->0;
3->2;
4->3;
5->4;
7->5;
8->7;
9->8;
11->9;
12->11;
13->12;
14->13;
15->14;
16->15;
18->16;
19->18;
21->19;
22->21;
24->22;
25->24;
26->25;
27->26;
28->27;
30->28;
31->30;
33->31;
34->33;
35->34;
37->35;
38->37;
39->38;
41->31;
42->41;
43->42;
45->43;
46->45;
47->46;
49->47;
50->49;
51->50;
53->28;
54->53;
55->54;
56->55;
57->56;
59->57;
61->19;
62->61;
64->62;
65->64;
66->65;
67->66;
68->67;
69->68;
70->69;
71->70;
73->71;
74->73;
76->74;
77->76;
79->77;
80->79;
81->80;
83->74;
84->83;
85->84;
86->85;
88->86;
89->88;
90->89;
92->71;
93->92;
94->93;
95->94;
96->95;
98->96;
100->9;
101->100;
102->101;
103->102;
104->103;
106->104;
107->106;
108->107;
110->108;
112->102;
113->112;
114->113;
115->114;
117->115;
118->2;
120->118;
121->120;
123->121;
124->123;
125->124;
127->125;
}
== Physical Plan ==
DeserializeToObject (94)
+- * BroadcastNestedLoopJoin Cross BuildRight (93)
:- * SerializeFromObject (86)
: +- MapPartitions (85)
: +- DeserializeToObject (84)
: +- * Project (83)
: +- * Project (82)
: +- * SortMergeJoin Inner (81)
: :- * Sort (68)
: : +- Exchange (67)
: : +- Project (66)
: : +- ObjectHashAggregate (65)
: : +- Exchange (64)
: : +- ObjectHashAggregate (63)
: : +- * Project (62)
: : +- * SortMergeJoin Inner (61)
: : :- * Sort (31)
: : : +- Exchange (30)
: : : +- * Project (29)
: : : +- * Filter (28)
: : : +- * Generate (27)
: : : +- * Project (26)
: : : +- * SortMergeJoin Inner (25)
: : : :- * Project (17)
: : : : +- * SortMergeJoin LeftOuter (16)
: : : : :- * Sort (6)
: : : : : +- * Project (5)
: : : : : +- Exchange (4)
: : : : : +- * Filter (3)
: : : : : +- * ColumnarToRow (2)
: : : : : +- Scan parquet (1)
: : : : +- * Sort (15)
: : : : +- ObjectHashAggregate (14)
: : : : +- ObjectHashAggregate (13)
: : : : +- * HashAggregate (12)
: : : : +- * HashAggregate (11)
: : : : +- Exchange (10)
: : : : +- * Filter (9)
: : : : +- * ColumnarToRow (8)
: : : : +- Scan parquet (7)
: : : +- * Sort (24)
: : : +- * Project (23)
: : : +- * Filter (22)
: : : +- InMemoryTableScan (18)
: : : +- InMemoryRelation (19)
: : : +- Exchange (21)
: : : +- * Scan ExistingRDD (20)
: : +- * Sort (60)
: : +- Exchange (59)
: : +- * Filter (58)
: : +- * HashAggregate (57)
: : +- * HashAggregate (56)
: : +- * Project (55)
: : +- * Filter (54)
: : +- * Generate (53)
: : +- * Project (52)
: : +- * SortMergeJoin Inner (51)
: : :- * Project (45)
: : : +- * SortMergeJoin LeftOuter (44)
: : : :- * Sort (36)
: : : : +- Exchange (35)
: : : : +- * Filter (34)
: : : : +- * ColumnarToRow (33)
: : : : +- Scan parquet (32)
: : : +- * Sort (43)
: : : +- * HashAggregate (42)
: : : +- * HashAggregate (41)
: : : +- Exchange (40)
: : : +- * Filter (39)
: : : +- * ColumnarToRow (38)
: : : +- Scan parquet (37)
: : +- * Sort (50)
: : +- * Project (49)
: : +- * Filter (48)
: : +- InMemoryTableScan (46)
: : +- InMemoryRelation (47)
: : +- Exchange (21)
: : +- * Scan ExistingRDD (20)
: +- * Sort (80)
: +- Exchange (79)
: +- Union (78)
: :- ObjectHashAggregate (73)
: : +- ObjectHashAggregate (72)
: : +- * Filter (71)
: : +- InMemoryTableScan (69)
: : +- InMemoryRelation (70)
: : +- Exchange (21)
: : +- * Scan ExistingRDD (20)
: +- * Project (77)
: +- * Filter (76)
: +- InMemoryTableScan (74)
: +- InMemoryRelation (75)
: +- Exchange (21)
: +- * Scan ExistingRDD (20)
+- BroadcastExchange (92)
+- * HashAggregate (91)
+- Exchange (90)
+- * HashAggregate (89)
+- InMemoryTableScan (87)
+- InMemoryRelation (88)
+- Exchange (21)
+- * Scan ExistingRDD (20)
(1) Scan parquet
Output [16]: [product#6685414, plant#6685415, outboundUnit#6685416, stockDatetime#6685417, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementQuantities#6685422, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementShelfLifeEndDatetimes#6685424, configuration#6685425, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000532/0_1_10000000532]
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#6685414, plant#6685415, outboundUnit#6685416, stockDatetime#6685417, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementQuantities#6685422, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementShelfLifeEndDatetimes#6685424, configuration#6685425, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429]
(3) Filter [codegen id : 1]
Input [16]: [product#6685414, plant#6685415, outboundUnit#6685416, stockDatetime#6685417, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementQuantities#6685422, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementShelfLifeEndDatetimes#6685424, configuration#6685425, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429]
Condition : ((isnotnull(product#6685414) AND isnotnull(plant#6685415)) AND isnotnull(stockDatetime#6685417))
(4) Exchange
Input [16]: [product#6685414, plant#6685415, outboundUnit#6685416, stockDatetime#6685417, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementQuantities#6685422, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementShelfLifeEndDatetimes#6685424, configuration#6685425, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429]
Arguments: hashpartitioning(product#6685414, plant#6685415, 30), REPARTITION_BY_NUM, [plan_id=28994722]
(5) Project [codegen id : 2]
Output [18]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementQuantities#6685422, openGoodsMovementShelfLifeEndDatetimes#6685424, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementAvailabilityDatetimes#6685423 AS openGoodsMovementOrderDatetimes#6685450, cast(struct(plantId, plant#6685415, 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#6685413]
Input [16]: [product#6685414, plant#6685415, outboundUnit#6685416, stockDatetime#6685417, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementQuantities#6685422, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementShelfLifeEndDatetimes#6685424, configuration#6685425, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429]
(6) Sort [codegen id : 2]
Input [18]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementQuantities#6685422, openGoodsMovementShelfLifeEndDatetimes#6685424, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685450, plantOperatingTimes#6685413]
Arguments: [product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST], false, 0
(7) Scan parquet
Output [8]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, deliveryDateTime#6685667, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669, orderProposalId#6685670L]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000532/stream-10000000532-3/shardId=0_1_10000000532]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000532), IsNotNull(product), IsNotNull(plant)]
ReadSchema: struct<shardId:string,product:string,plant:string,orderDateTime:timestamp,deliveryDateTime:timestamp,availabilityDateTime:timestamp,orderQuantityInBaseUnit:double,orderProposalId:bigint>
(8) ColumnarToRow [codegen id : 3]
Input [8]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, deliveryDateTime#6685667, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669, orderProposalId#6685670L]
(9) Filter [codegen id : 3]
Input [8]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, deliveryDateTime#6685667, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669, orderProposalId#6685670L]
Condition : (((isnotnull(shardId#6685663) AND (0_1_10000000532 = shardId#6685663)) AND isnotnull(product#6685664)) AND isnotnull(plant#6685665))
(10) Exchange
Input [8]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, deliveryDateTime#6685667, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669, orderProposalId#6685670L]
Arguments: hashpartitioning(product#6685664, plant#6685665, 30), REPARTITION_BY_NUM, [plan_id=28994732]
(11) HashAggregate [codegen id : 4]
Input [8]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, deliveryDateTime#6685667, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669, orderProposalId#6685670L]
Keys [8]: [plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#6685669)) AS orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664]
Functions: []
Aggregate Attributes: []
Results [8]: [plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664]
(12) HashAggregate [codegen id : 4]
Input [8]: [plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664]
Keys [8]: [plant#6685665, availabilityDateTime#6685668, orderProposalId#6685670L, shardId#6685663, orderDateTime#6685666, orderQuantityInBaseUnit#6685669, deliveryDateTime#6685667, product#6685664]
Functions: []
Aggregate Attributes: []
Results [6]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669]
(13) ObjectHashAggregate
Input [6]: [shardId#6685663, product#6685664, plant#6685665, orderDateTime#6685666, availabilityDateTime#6685668, orderQuantityInBaseUnit#6685669]
Keys [3]: [shardId#6685663, product#6685664, plant#6685665]
Functions [4]: [partial_collect_list(orderDatetime#6685666, 0, 0), partial_collect_list(availabilityDatetime#6685668, 0, 0), partial_collect_list(orderQuantityInBaseUnit#6685669, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [buf#6687211, buf#6687212, buf#6687213, buf#6687214]
Results [7]: [shardId#6685663, product#6685664, plant#6685665, buf#6687215, buf#6687216, buf#6687217, buf#6687218]
(14) ObjectHashAggregate
Input [7]: [shardId#6685663, product#6685664, plant#6685665, buf#6687215, buf#6687216, buf#6687217, buf#6687218]
Keys [3]: [shardId#6685663, product#6685664, plant#6685665]
Functions [4]: [collect_list(orderDatetime#6685666, 0, 0), collect_list(availabilityDatetime#6685668, 0, 0), collect_list(orderQuantityInBaseUnit#6685669, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [collect_list(orderDatetime#6685666, 0, 0)#6685982, collect_list(availabilityDatetime#6685668, 0, 0)#6685983, collect_list(orderQuantityInBaseUnit#6685669, 0, 0)#6685984, collect_list(2199-01-01 00:00:00, 0, 0)#6685985]
Results [6]: [product#6685664, plant#6685665, collect_list(orderDatetime#6685666, 0, 0)#6685982 AS aggOrderDateTimes#6685969, collect_list(availabilityDatetime#6685668, 0, 0)#6685983 AS aggAvailabilityDateTimes#6685970, collect_list(orderQuantityInBaseUnit#6685669, 0, 0)#6685984 AS aggQuantities#6685971, collect_list(2199-01-01 00:00:00, 0, 0)#6685985 AS aggShelfLifeEndDateTimes#6685972]
(15) Sort [codegen id : 5]
Input [6]: [product#6685664, plant#6685665, aggOrderDateTimes#6685969, aggAvailabilityDateTimes#6685970, aggQuantities#6685971, aggShelfLifeEndDateTimes#6685972]
Arguments: [product#6685664 ASC NULLS FIRST, plant#6685665 ASC NULLS FIRST], false, 0
(16) SortMergeJoin [codegen id : 6]
Left keys [2]: [product#6685414, plant#6685415]
Right keys [2]: [product#6685664, plant#6685665]
Join type: LeftOuter
Join condition: None
(17) Project [codegen id : 6]
Output [18]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, coalesce(concat(openGoodsMovementAvailabilityDatetimes#6685423, aggAvailabilityDateTimes#6685970), openGoodsMovementAvailabilityDatetimes#6685423) AS openGoodsMovementAvailabilityDatetimes#6685987, coalesce(concat(openGoodsMovementQuantities#6685422, aggQuantities#6685971), openGoodsMovementQuantities#6685422) AS openGoodsMovementQuantities#6685988, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#6685424, aggShelfLifeEndDateTimes#6685972), openGoodsMovementShelfLifeEndDatetimes#6685424) AS openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, coalesce(concat(openGoodsMovementOrderDatetimes#6685450, aggOrderDateTimes#6685969), openGoodsMovementOrderDatetimes#6685450) AS openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413]
Input [24]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685423, openGoodsMovementQuantities#6685422, openGoodsMovementShelfLifeEndDatetimes#6685424, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685450, plantOperatingTimes#6685413, product#6685664, plant#6685665, aggOrderDateTimes#6685969, aggAvailabilityDateTimes#6685970, aggQuantities#6685971, aggShelfLifeEndDateTimes#6685972]
(18) InMemoryTableScan
Output [5]: [periodEnd#6552503, periodStart#6552502, plant#6552501, product#6552500, shardId#6552497]
Arguments: [periodEnd#6552503, periodStart#6552502, plant#6552501, product#6552500, shardId#6552497], [isnotnull(shardId#6552497), (0_1_10000000532 = shardId#6552497), isnotnull(product#6552500), isnotnull(plant#6552501)]
(19) InMemoryRelation
Arguments: [shardId#6552497, worklistShardItemId#6552498L, version#6552499, product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503, qty#6552504], StorageLevel(disk, memory, 2 replicas)
(20) Scan ExistingRDD [codegen id : 1]
Output [8]: [shardId#6552497, worklistShardItemId#6552498L, version#6552499, product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503, qty#6552504]
Arguments: [shardId#6552497, worklistShardItemId#6552498L, version#6552499, product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503, qty#6552504], SQLExecutionRDD[414052] at start at FileStorageAdapterImpl.java:179, ExistingRDD, UnknownPartitioning(0)
(21) Exchange
Input [8]: [shardId#6552497, worklistShardItemId#6552498L, version#6552499, product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503, qty#6552504]
Arguments: hashpartitioning(product#6552500, plant#6552501, 30), REPARTITION_BY_NUM, [plan_id=28994026]
(22) Filter [codegen id : 7]
Input [5]: [periodEnd#6552503, periodStart#6552502, plant#6552501, product#6552500, shardId#6552497]
Condition : (((isnotnull(shardId#6552497) AND (0_1_10000000532 = shardId#6552497)) AND isnotnull(product#6552500)) AND isnotnull(plant#6552501))
(23) Project [codegen id : 7]
Output [4]: [product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503]
Input [5]: [periodEnd#6552503, periodStart#6552502, plant#6552501, product#6552500, shardId#6552497]
(24) Sort [codegen id : 7]
Input [4]: [product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503]
Arguments: [product#6552500 ASC NULLS FIRST, plant#6552501 ASC NULLS FIRST], false, 0
(25) SortMergeJoin [codegen id : 8]
Left keys [2]: [product#6685414, plant#6685415]
Right keys [2]: [product#6552500, plant#6552501]
Join type: Inner
Join condition: None
(26) Project [codegen id : 8]
Output [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, struct(orderDatetime, stockDatetime#6685417, availabilityDatetime, periodStart#6552502, demandPeriodEndDatetime, periodEnd#6552503, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#6685994]
Input [22]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, product#6552500, plant#6552501, periodStart#6552502, periodEnd#6552503]
(27) Generate [codegen id : 8]
Input [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, configuration#6685425, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994]
Arguments: posexplode(configuration#6685425), [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994], true, [confPos#6685995, explodedConf#6685996]
(28) Filter [codegen id : 8]
Input [20]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996]
Condition : (((CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END <= cast(schedule#6685994.orderDatetime as bigint)) AND isnotnull((cast(schedule#6685994.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#6685996.configurationName))
(29) Project [codegen id : 8]
Output [22]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996, explodedConf#6685996.configurationName AS configurationName#6685997, (cast(schedule#6685994.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6685996.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6685996.configurationValidityDatetime as bigint) END) AS distance#6686001L]
Input [20]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996]
(30) Exchange
Input [22]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996, configurationName#6685997, distance#6686001L]
Arguments: hashpartitioning(distance#6686001L, product#6685414, plant#6685415, configurationName#6685997, 30), ENSURE_REQUIREMENTS, [plan_id=28994759]
(31) Sort [codegen id : 9]
Input [22]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996, configurationName#6685997, distance#6686001L]
Arguments: [distance#6686001L ASC NULLS FIRST, product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST, configurationName#6685997 ASC NULLS FIRST], false, 0
(32) Scan parquet
Output [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000532/0_1_10000000532]
PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)]
ReadSchema: struct<product:string,plant:string,stockDatetime:timestamp,configuration:array<struct<configurationValidityDatetime:timestamp,configurationName:string,configurationValue:string>>>
(33) ColumnarToRow [codegen id : 10]
Input [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
(34) Filter [codegen id : 10]
Input [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
Condition : ((isnotnull(product#6686062) AND isnotnull(plant#6686063)) AND isnotnull(stockDatetime#6686065))
(35) Exchange
Input [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
Arguments: hashpartitioning(product#6686062, plant#6686063, 30), REPARTITION_BY_NUM, [plan_id=28994768]
(36) Sort [codegen id : 11]
Input [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
Arguments: [product#6686062 ASC NULLS FIRST, plant#6686063 ASC NULLS FIRST], false, 0
(37) Scan parquet
Output [3]: [shardId#6686090, product#6686091, plant#6686092]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://7da5304c-1f57-47fa-b75a-0f0b4349c280.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000532/stream-10000000532-3/shardId=0_1_10000000532]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000532), IsNotNull(product), IsNotNull(plant)]
ReadSchema: struct<shardId:string,product:string,plant:string>
(38) ColumnarToRow [codegen id : 12]
Input [3]: [shardId#6686090, product#6686091, plant#6686092]
(39) Filter [codegen id : 12]
Input [3]: [shardId#6686090, product#6686091, plant#6686092]
Condition : (((isnotnull(shardId#6686090) AND (0_1_10000000532 = shardId#6686090)) AND isnotnull(product#6686091)) AND isnotnull(plant#6686092))
(40) Exchange
Input [3]: [shardId#6686090, product#6686091, plant#6686092]
Arguments: hashpartitioning(product#6686091, plant#6686092, 30), REPARTITION_BY_NUM, [plan_id=28994777]
(41) HashAggregate [codegen id : 13]
Input [3]: [shardId#6686090, product#6686091, plant#6686092]
Keys [3]: [shardId#6686090, product#6686091, plant#6686092]
Functions: []
Aggregate Attributes: []
Results [3]: [shardId#6686090, product#6686091, plant#6686092]
(42) HashAggregate [codegen id : 13]
Input [3]: [shardId#6686090, product#6686091, plant#6686092]
Keys [3]: [shardId#6686090, product#6686091, plant#6686092]
Functions: []
Aggregate Attributes: []
Results [2]: [product#6686091, plant#6686092]
(43) Sort [codegen id : 13]
Input [2]: [product#6686091, plant#6686092]
Arguments: [product#6686091 ASC NULLS FIRST, plant#6686092 ASC NULLS FIRST], false, 0
(44) SortMergeJoin [codegen id : 14]
Left keys [2]: [product#6686062, plant#6686063]
Right keys [2]: [product#6686091, plant#6686092]
Join type: LeftOuter
Join condition: None
(45) Project [codegen id : 14]
Output [4]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073]
Input [6]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073, product#6686091, plant#6686092]
(46) InMemoryTableScan
Output [5]: [periodEnd#6686113, periodStart#6686112, plant#6686111, product#6686110, shardId#6686107]
Arguments: [periodEnd#6686113, periodStart#6686112, plant#6686111, product#6686110, shardId#6686107], [isnotnull(shardId#6686107), (0_1_10000000532 = shardId#6686107), isnotnull(product#6686110), isnotnull(plant#6686111)]
(47) InMemoryRelation
Arguments: [shardId#6686107, worklistShardItemId#6686108L, version#6686109, product#6686110, plant#6686111, periodStart#6686112, periodEnd#6686113, qty#6686114], StorageLevel(disk, memory, 2 replicas)
(48) Filter [codegen id : 15]
Input [5]: [periodEnd#6686113, periodStart#6686112, plant#6686111, product#6686110, shardId#6686107]
Condition : (((isnotnull(shardId#6686107) AND (0_1_10000000532 = shardId#6686107)) AND isnotnull(product#6686110)) AND isnotnull(plant#6686111))
(49) Project [codegen id : 15]
Output [4]: [product#6686110, plant#6686111, periodStart#6686112, periodEnd#6686113]
Input [5]: [periodEnd#6686113, periodStart#6686112, plant#6686111, product#6686110, shardId#6686107]
(50) Sort [codegen id : 15]
Input [4]: [product#6686110, plant#6686111, periodStart#6686112, periodEnd#6686113]
Arguments: [product#6686110 ASC NULLS FIRST, plant#6686111 ASC NULLS FIRST], false, 0
(51) SortMergeJoin [codegen id : 16]
Left keys [2]: [product#6686062, plant#6686063]
Right keys [2]: [product#6686110, plant#6686111]
Join type: Inner
Join condition: None
(52) Project [codegen id : 16]
Output [4]: [product#6686062, plant#6686063, configuration#6686073, struct(orderDatetime, stockDatetime#6686065, availabilityDatetime, periodStart#6686112, demandPeriodEndDatetime, periodEnd#6686113, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#6686116]
Input [8]: [product#6686062, plant#6686063, stockDatetime#6686065, configuration#6686073, product#6686110, plant#6686111, periodStart#6686112, periodEnd#6686113]
(53) Generate [codegen id : 16]
Input [4]: [product#6686062, plant#6686063, configuration#6686073, schedule#6686116]
Arguments: posexplode(configuration#6686073), [product#6686062, plant#6686063, schedule#6686116], true, [confPos#6686117, explodedConf#6686118]
(54) Filter [codegen id : 16]
Input [5]: [product#6686062, plant#6686063, schedule#6686116, confPos#6686117, explodedConf#6686118]
Condition : ((CASE WHEN isnull(explodedConf#6686118.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6686118.configurationValidityDatetime as bigint) END <= cast(schedule#6686116.orderDatetime as bigint)) AND isnotnull(explodedConf#6686118.configurationName))
(55) Project [codegen id : 16]
Output [4]: [product#6686062, plant#6686063, explodedConf#6686118.configurationName AS configurationName#6686119, (cast(schedule#6686116.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#6686118.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#6686118.configurationValidityDatetime as bigint) END) AS distance#6686121L]
Input [5]: [product#6686062, plant#6686063, schedule#6686116, confPos#6686117, explodedConf#6686118]
(56) HashAggregate [codegen id : 16]
Input [4]: [product#6686062, plant#6686063, configurationName#6686119, distance#6686121L]
Keys [3]: [product#6686062, plant#6686063, configurationName#6686119]
Functions [1]: [partial_min(distance#6686121L)]
Aggregate Attributes [1]: [min#6687219L]
Results [4]: [product#6686062, plant#6686063, configurationName#6686119, min#6687220L]
(57) HashAggregate [codegen id : 16]
Input [4]: [product#6686062, plant#6686063, configurationName#6686119, min#6687220L]
Keys [3]: [product#6686062, plant#6686063, configurationName#6686119]
Functions [1]: [min(distance#6686121L)]
Aggregate Attributes [1]: [min(distance#6686121L)#6686029L]
Results [4]: [product#6686062, plant#6686063, configurationName#6686119, min(distance#6686121L)#6686029L AS minDistance#6686003L]
(58) Filter [codegen id : 16]
Input [4]: [product#6686062, plant#6686063, configurationName#6686119, minDistance#6686003L]
Condition : isnotnull(minDistance#6686003L)
(59) Exchange
Input [4]: [product#6686062, plant#6686063, configurationName#6686119, minDistance#6686003L]
Arguments: hashpartitioning(minDistance#6686003L, product#6686062, plant#6686063, configurationName#6686119, 30), ENSURE_REQUIREMENTS, [plan_id=28994803]
(60) Sort [codegen id : 17]
Input [4]: [product#6686062, plant#6686063, configurationName#6686119, minDistance#6686003L]
Arguments: [minDistance#6686003L ASC NULLS FIRST, product#6686062 ASC NULLS FIRST, plant#6686063 ASC NULLS FIRST, configurationName#6686119 ASC NULLS FIRST], false, 0
(61) SortMergeJoin [codegen id : 18]
Left keys [4]: [distance#6686001L, product#6685414, plant#6685415, configurationName#6685997]
Right keys [4]: [minDistance#6686003L, product#6686062, plant#6686063, configurationName#6686119]
Join type: Inner
Join condition: None
(62) Project [codegen id : 18]
Output [20]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996]
Input [26]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996, configurationName#6685997, distance#6686001L, product#6686062, plant#6686063, configurationName#6686119, minDistance#6686003L]
(63) ObjectHashAggregate
Input [20]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, confPos#6685995, explodedConf#6685996]
Keys [19]: [0_1_10000000532 AS 0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#6685416)) AS outboundUnit#6685416, knownfloatingpointnormalized(transform(stockBatchQuantities#6685418, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687200)), lambda arg#6687200, false))) AS stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, knownfloatingpointnormalized(transform(dayBucketDemands#6685420, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#6687201)) null else named_struct(demandChannel, lambda arg#6687201.demandChannel, demandStream, lambda arg#6687201.demandStream, considerVariance, lambda arg#6687201.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#6687201.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687202)), lambda arg#6687202, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#6687201.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687203)), lambda arg#6687203, false))), anchorDatetimes, lambda arg#6687201.anchorDatetimes, anchorWeekdays, lambda arg#6687201.anchorWeekdays, anchorIndices, lambda arg#6687201.anchorIndices)), lambda arg#6687201, false))) AS dayBucketDemands#6685420, knownfloatingpointnormalized(transform(pointInTimeDemands#6685421, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#6687204)) null else named_struct(demandChannel, lambda arg#6687204.demandChannel, demandStream, lambda arg#6687204.demandStream, considerVariance, lambda arg#6687204.considerVariance, demandDatetimes, lambda arg#6687204.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#6687204.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687205)), lambda arg#6687205, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#6687204.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687206)), lambda arg#6687206, false))), horizonStartDatetime, lambda arg#6687204.horizonStartDatetime, horizonEndDatetime, lambda arg#6687204.horizonEndDatetime)), lambda arg#6687204, false))) AS pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#6685988, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687207)), lambda arg#6687207, false))) AS openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, knownfloatingpointnormalized(transform(timeDependentSettingsValue#6685429, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#6687208)), lambda arg#6687208, false))) AS timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994]
Functions [1]: [partial_collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)]
Aggregate Attributes [1]: [buf#6687209]
Results [20]: [0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, buf#6687210]
(64) Exchange
Input [20]: [0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, buf#6687210]
Arguments: hashpartitioning(0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, 30), ENSURE_REQUIREMENTS, [plan_id=28994812]
(65) ObjectHashAggregate
Input [20]: [0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, buf#6687210]
Keys [19]: [0_1_10000000532#6687199, product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994]
Functions [1]: [collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)#6686148]
Results [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, sort_array(collect_list(struct(confPos, confPos#6685995, explodedConf, explodedConf#6685996), 0, 0)#6686148, true) AS configurations#6686124]
(66) Project
Output [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, struct(names, transform(configurations#6686124, lambdafunction(lambda x#6686152.explodedConf.configurationName, lambda x#6686152, false)), values, transform(configurations#6686124, lambdafunction(lambda x#6686153.explodedConf.configurationValue, lambda x#6686153, false))) AS configuration#6686151]
Input [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, configurations#6686124]
(67) Exchange
Input [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, configuration#6686151]
Arguments: hashpartitioning(product#6685414, plant#6685415, 30), ENSURE_REQUIREMENTS, [plan_id=28994815]
(68) Sort [codegen id : 19]
Input [19]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, configuration#6686151]
Arguments: [product#6685414 ASC NULLS FIRST, plant#6685415 ASC NULLS FIRST], false, 0
(69) InMemoryTableScan
Output [3]: [product#6686184, plant#6686185, qty#6686188]
Arguments: [product#6686184, plant#6686185, qty#6686188], [isnotnull(qty#6686188), isnotnull(product#6686184), isnotnull(plant#6686185)]
(70) InMemoryRelation
Arguments: [shardId#6686181, worklistShardItemId#6686182L, version#6686183, product#6686184, plant#6686185, periodStart#6686186, periodEnd#6686187, qty#6686188], StorageLevel(disk, memory, 2 replicas)
(71) Filter [codegen id : 20]
Input [3]: [product#6686184, plant#6686185, qty#6686188]
Condition : ((isnotnull(qty#6686188) AND isnotnull(product#6686184)) AND isnotnull(plant#6686185))
(72) ObjectHashAggregate
Input [3]: [product#6686184, plant#6686185, qty#6686188]
Keys [2]: [product#6686184, plant#6686185]
Functions [1]: [partial_collect_list(qty#6686188, 0, 0)]
Aggregate Attributes [1]: [buf#6687221]
Results [3]: [product#6686184, plant#6686185, buf#6687222]
(73) ObjectHashAggregate
Input [3]: [product#6686184, plant#6686185, buf#6687222]
Keys [2]: [product#6686184, plant#6686185]
Functions [1]: [collect_list(qty#6686188, 0, 0)]
Aggregate Attributes [1]: [collect_list(qty#6686188, 0, 0)#6686172]
Results [3]: [product#6686184, plant#6686185, collect_list(qty#6686188, 0, 0)#6686172 AS requestedQuantities#6686163]
(74) InMemoryTableScan
Output [3]: [plant#6686177, product#6686176, qty#6686180]
Arguments: [plant#6686177, product#6686176, qty#6686180], [isnull(qty#6686180), isnotnull(product#6686176), isnotnull(plant#6686177)]
(75) InMemoryRelation
Arguments: [shardId#6686173, worklistShardItemId#6686174L, version#6686175, product#6686176, plant#6686177, periodStart#6686178, periodEnd#6686179, qty#6686180], StorageLevel(disk, memory, 2 replicas)
(76) Filter [codegen id : 21]
Input [3]: [plant#6686177, product#6686176, qty#6686180]
Condition : ((isnull(qty#6686180) AND isnotnull(product#6686176)) AND isnotnull(plant#6686177))
(77) Project [codegen id : 21]
Output [3]: [product#6686176, plant#6686177, [] AS requestedQuantities#6686162]
Input [3]: [plant#6686177, product#6686176, qty#6686180]
(78) Union
(79) Exchange
Input [3]: [product#6686184, plant#6686185, requestedQuantities#6686163]
Arguments: hashpartitioning(product#6686184, plant#6686185, 30), ENSURE_REQUIREMENTS, [plan_id=28994830]
(80) Sort [codegen id : 22]
Input [3]: [product#6686184, plant#6686185, requestedQuantities#6686163]
Arguments: [product#6686184 ASC NULLS FIRST, plant#6686185 ASC NULLS FIRST], false, 0
(81) SortMergeJoin [codegen id : 23]
Left keys [2]: [product#6685414, plant#6685415]
Right keys [2]: [product#6686184, plant#6686185]
Join type: Inner
Join condition: None
(82) Project [codegen id : 23]
Output [3]: [plantOperatingTimes#6685413, struct(productId, product#6685414, plantId, plant#6685415, requestedQuantities, requestedQuantities#6686163, outboundUnit, outboundUnit#6685416, stock, struct(stockBatchQuantities, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#6685419, stockDatetime, stockDatetime#6685417), demand, struct(dayBucketDemands, dayBucketDemands#6685420, pointInTimeDemands, pointInTimeDemands#6685421), schedule, schedule#6685994, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#6685986) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementOrderDatetimes#6685986 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#6685987) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementAvailabilityDatetimes#6685987 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#6685988) THEN openGoodsMovementQuantities#6685988 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#6685989) AND isnotnull(openGoodsMovementQuantities#6685988)) THEN openGoodsMovementShelfLifeEndDatetimes#6685989 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#6685428, names, timeDependentSettingsName#6685426, startDatetimes, timeDependentSettingsStartDatetime#6685427, values, timeDependentSettingsValue#6685429), configuration, configuration#6686151) AS ProductPlantQuantityInformation#6686207, SPARK_PARTITION_ID() AS executionID#6686208]
Input [22]: [product#6685414, plant#6685415, stockDatetime#6685417, outboundUnit#6685416, stockBatchQuantities#6685418, stockBatchShelfLifeEndDatetimes#6685419, dayBucketDemands#6685420, pointInTimeDemands#6685421, openGoodsMovementAvailabilityDatetimes#6685987, openGoodsMovementQuantities#6685988, openGoodsMovementShelfLifeEndDatetimes#6685989, timeDependentSettingsName#6685426, timeDependentSettingsStartDatetime#6685427, timeDependentSettingsEndDatetime#6685428, timeDependentSettingsValue#6685429, openGoodsMovementOrderDatetimes#6685986, plantOperatingTimes#6685413, schedule#6685994, configuration#6686151, product#6686184, plant#6686185, requestedQuantities#6686163]
(83) Project [codegen id : 23]
Output [3]: [executionID#6686208, array(ProductPlantQuantityInformation#6686207) AS prodPlantQuantityInformation#6686209, array(plantOperatingTimes#6685413) AS plantOperatingTimesArray#6686210]
Input [3]: [plantOperatingTimes#6685413, ProductPlantQuantityInformation#6686207, executionID#6686208]
(84) DeserializeToObject
Input [3]: [executionID#6686208, prodPlantQuantityInformation#6686209, plantOperatingTimesArray#6686210]
Arguments: createexternalrow(static_invoke(java.lang.Integer.valueOf(executionID#6686208)), 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#6686209, 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#6686210, 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#6686217: org.apache.spark.sql.Row
(85) MapPartitions
Input [1]: [obj#6686217]
Arguments: org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x000000080297efb0@6f022356, obj#6686221: org.apache.spark.sql.Row
(86) SerializeFromObject [codegen id : 26]
Input [1]: [obj#6686221]
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#6686225, 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#6686226, 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#6686227]
(87) InMemoryTableScan
Output: []
(88) InMemoryRelation
Arguments: [shardId#6686228, worklistShardItemId#6686229L, version#6686230, product#6686231, plant#6686232, periodStart#6686233, periodEnd#6686234, qty#6686235], StorageLevel(disk, memory, 2 replicas)
(89) HashAggregate [codegen id : 24]
Input: []
Keys [1]: [1 AS 1#6687223]
Functions: []
Aggregate Attributes: []
Results [1]: [1#6687223]
(90) Exchange
Input [1]: [1#6687223]
Arguments: hashpartitioning(1#6687223, 30), ENSURE_REQUIREMENTS, [plan_id=28994846]
(91) HashAggregate [codegen id : 25]
Input [1]: [1#6687223]
Keys [1]: [1#6687223]
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#6686161]
(92) BroadcastExchange
Input [1]: [configuration#6686161]
Arguments: IdentityBroadcastMode, [plan_id=28994850]
(93) BroadcastNestedLoopJoin [codegen id : 26]
Join type: Cross
Join condition: None
(94) DeserializeToObject
Input [4]: [executionID#6686225, prodPlantQuantityInformation#6686226, plantOperatingTimesArray#6686227, configuration#6686161]
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#6686161.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#6686161.values, None).array())))), (setExecutionID,executionID#6686225), (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#6686227, 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#6686226, None).array()))), obj#6686253: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument