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#13707785.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#13707785.values, None).array())))), (setExecutionID,executionID#13707849), (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#13707851, 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#13707850, None).array()))), obj#13707877: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument"];
subgraph cluster1 {
isCluster="true";
id="cluster1";
label="WholeStageCodegen (21)";
tooltip="WholeStageCodegen (21)";
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#13707849, 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#13707850, 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#13707851]"];
}
4 [id="node4" labelType="html" label="<br><b>MapPartitions</b><br><br>" tooltip="MapPartitions org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x0000000801cd2a50@20a8931b, obj#13707845: 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#13707832)), 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#13707833, 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#13707834, 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#13707841: org.apache.spark.sql.Row"];
subgraph cluster6 {
isCluster="true";
id="cluster6";
label="WholeStageCodegen (18)";
tooltip="WholeStageCodegen (18)";
7 [id="node7" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [executionID#13707832, array(ProductPlantQuantityInformation#13707831) AS prodPlantQuantityInformation#13707833, array(plantOperatingTimes#13707014) AS plantOperatingTimesArray#13707834]"];
8 [id="node8" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [plantOperatingTimes#13707014, struct(productId, product#13707015, plantId, plant#13707016, requestedQuantities, requestedQuantities#13707787, outboundUnit, outboundUnit#13707017, stock, struct(stockBatchQuantities, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#13707020, stockDatetime, stockDatetime#13707018), demand, struct(dayBucketDemands, dayBucketDemands#13707021, pointInTimeDemands, pointInTimeDemands#13707022), schedule, schedule#13707618, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#13707610) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementOrderDatetimes#13707610 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#13707611) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementAvailabilityDatetimes#13707611 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#13707612) THEN openGoodsMovementQuantities#13707612 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#13707613) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementShelfLifeEndDatetimes#13707613 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#13707029, names, timeDependentSettingsName#13707027, startDatetimes, timeDependentSettingsStartDatetime#13707028, values, timeDependentSettingsValue#13707030), configuration, configuration#13707775) AS ProductPlantQuantityInformation#13707831, SPARK_PARTITION_ID() AS executionID#13707832]"];
9 [id="node9" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#13707015, plant#13707016], [product#13707808, plant#13707809], Inner, BuildRight, false"];
}
10 [id="node10" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, struct(names, transform(configurations#13707748, lambdafunction(lambda x#13707776.explodedConf.configurationName, lambda x#13707776, false)), values, transform(configurations#13707748, lambdafunction(lambda x#13707777.explodedConf.configurationValue, lambda x#13707777, false))) AS configuration#13707775]"];
11 [id="node11" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618], functions=[collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)])"];
12 [id="node12" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, 30), ENSURE_REQUIREMENTS, [plan_id=13471879]"];
13 [id="node13" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[0_1_10000000265 AS 0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#13707017)) AS outboundUnit#13707017, knownfloatingpointnormalized(transform(stockBatchQuantities#13707019, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708656)), lambda arg#13708656, false))) AS stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, knownfloatingpointnormalized(transform(dayBucketDemands#13707021, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#13708657)) null else named_struct(demandChannel, lambda arg#13708657.demandChannel, demandStream, lambda arg#13708657.demandStream, considerVariance, lambda arg#13708657.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#13708657.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708658)), lambda arg#13708658, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#13708657.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708659)), lambda arg#13708659, false))), anchorDatetimes, lambda arg#13708657.anchorDatetimes, anchorWeekdays, lambda arg#13708657.anchorWeekdays, anchorIndices, lambda arg#13708657.anchorIndices)), lambda arg#13708657, false))) AS dayBucketDemands#13707021, knownfloatingpointnormalized(transform(pointInTimeDemands#13707022, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#13708660)) null else named_struct(demandChannel, lambda arg#13708660.demandChannel, demandStream, lambda arg#13708660.demandStream, considerVariance, lambda arg#13708660.considerVariance, demandDatetimes, lambda arg#13708660.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#13708660.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708661)), lambda arg#13708661, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#13708660.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708662)), lambda arg#13708662, false))), horizonStartDatetime, lambda arg#13708660.horizonStartDatetime, horizonEndDatetime, lambda arg#13708660.horizonEndDatetime)), lambda arg#13708660, false))) AS pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#13707612, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708663)), lambda arg#13708663, false))) AS openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, knownfloatingpointnormalized(transform(timeDependentSettingsValue#13707030, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708664)), lambda arg#13708664, false))) AS timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618], functions=[partial_collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)])"];
subgraph cluster14 {
isCluster="true";
id="cluster14";
label="WholeStageCodegen (15)";
tooltip="WholeStageCodegen (15)";
15 [id="node15" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620]"];
16 [id="node16" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [distance#13707625L, product#13707015, plant#13707016, configurationName#13707621], [minDistance#13707627L, product#13707686, plant#13707687, configurationName#13707743], Inner"];
}
subgraph cluster17 {
isCluster="true";
id="cluster17";
label="WholeStageCodegen (8)";
tooltip="WholeStageCodegen (8)";
18 [id="node18" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [distance#13707625L ASC NULLS FIRST, product#13707015 ASC NULLS FIRST, plant#13707016 ASC NULLS FIRST, configurationName#13707621 ASC NULLS FIRST], false, 0"];
}
19 [id="node19" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(distance#13707625L, product#13707015, plant#13707016, configurationName#13707621, 30), ENSURE_REQUIREMENTS, [plan_id=13471654]"];
subgraph cluster20 {
isCluster="true";
id="cluster20";
label="WholeStageCodegen (7)";
tooltip="WholeStageCodegen (7)";
21 [id="node21" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620, explodedConf#13707620.configurationName AS configurationName#13707621, (cast(schedule#13707618.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END) AS distance#13707625L]"];
22 [id="node22" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END <= cast(schedule#13707618.orderDatetime as bigint)) AND isnotnull((cast(schedule#13707618.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#13707620.configurationName))"];
23 [id="node23" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#13707026), [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618], true, [confPos#13707619, explodedConf#13707620]"];
24 [id="node24" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, struct(orderDatetime, stockDatetime#13707018, availabilityDatetime, periodStart#13191131, demandPeriodEndDatetime, periodEnd#13191132, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#13707618]"];
25 [id="node25" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#13707015, plant#13707016], [product#13191129, plant#13191130], Inner, BuildRight, false"];
26 [id="node26" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, coalesce(concat(openGoodsMovementAvailabilityDatetimes#13707024, aggAvailabilityDateTimes#13707594), openGoodsMovementAvailabilityDatetimes#13707024) AS openGoodsMovementAvailabilityDatetimes#13707611, coalesce(concat(openGoodsMovementQuantities#13707023, aggQuantities#13707595), openGoodsMovementQuantities#13707023) AS openGoodsMovementQuantities#13707612, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#13707025, aggShelfLifeEndDateTimes#13707596), openGoodsMovementShelfLifeEndDatetimes#13707025) AS openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, coalesce(concat(openGoodsMovementOrderDatetimes#13707051, aggOrderDateTimes#13707593), openGoodsMovementOrderDatetimes#13707051) AS openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014]"];
27 [id="node27" labelType="html" label="<br><b>SortMergeJoin</b><br><br>" tooltip="SortMergeJoin [product#13707015, plant#13707016], [product#13707265, plant#13707266], LeftOuter"];
}
subgraph cluster28 {
isCluster="true";
id="cluster28";
label="WholeStageCodegen (2)";
tooltip="WholeStageCodegen (2)";
29 [id="node29" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#13707015 ASC NULLS FIRST, plant#13707016 ASC NULLS FIRST], false, 0"];
30 [id="node30" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementQuantities#13707023, openGoodsMovementShelfLifeEndDatetimes#13707025, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementAvailabilityDatetimes#13707024 AS openGoodsMovementOrderDatetimes#13707051, cast(struct(plantId, plant#13707016, 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#13707014]"];
}
31 [id="node31" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#13707015, plant#13707016, 30), REPARTITION_BY_NUM, [plan_id=13471619]"];
subgraph cluster32 {
isCluster="true";
id="cluster32";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
33 [id="node33" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#13707015) AND isnotnull(plant#13707016)) AND isnotnull(stockDatetime#13707018))"];
34 [id="node34" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
35 [id="node35" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 29<br>metadata time: 0 ms<br>size of files read: 387.9 KiB" tooltip="FileScan parquet [product#13707015,plant#13707016,outboundUnit#13707017,stockDatetime#13707018,stockBatchQuantities#13707019,stockBatchShelfLifeEndDatetimes#13707020,dayBucketDemands#13707021,pointInTimeDemands#13707022,openGoodsMovementQuantities#13707023,openGoodsMovementAvailabilityDatetimes#13707024,openGoodsMovementShelfLifeEndDatetimes#13707025,configuration#13707026,timeDependentSettingsName#13707027,timeDependentSettingsStartDatetime#13707028,timeDependentSettingsEndDatetime#13707029,timeDependentSettingsValue#13707030] Batched: true, DataFilters: [isnotnull(product#13707015), isnotnull(plant#13707016), isnotnull(stockDatetime#13707018)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,outboundUnit:double,stockDatetime:timestamp,stockBatchQuantiti..."];
subgraph cluster36 {
isCluster="true";
id="cluster36";
label="WholeStageCodegen (5)";
tooltip="WholeStageCodegen (5)";
37 [id="node37" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [product#13707265 ASC NULLS FIRST, plant#13707266 ASC NULLS FIRST], false, 0"];
}
38 [id="node38" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[shardId#13707264, product#13707265, plant#13707266], functions=[collect_list(orderDatetime#13707267, 0, 0), collect_list(availabilityDatetime#13707269, 0, 0), collect_list(orderQuantityInBaseUnit#13707270, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)])"];
39 [id="node39" labelType="html" label="<br><b>ObjectHashAggregate</b><br><br>" tooltip="ObjectHashAggregate(keys=[shardId#13707264, product#13707265, plant#13707266], functions=[partial_collect_list(orderDatetime#13707267, 0, 0), partial_collect_list(availabilityDatetime#13707269, 0, 0), partial_collect_list(orderQuantityInBaseUnit#13707270, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)])"];
subgraph cluster40 {
isCluster="true";
id="cluster40";
label="WholeStageCodegen (4)";
tooltip="WholeStageCodegen (4)";
41 [id="node41" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265], functions=[])"];
42 [id="node42" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#13707270)) AS orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265], functions=[])"];
}
43 [id="node43" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#13707265, plant#13707266, 30), REPARTITION_BY_NUM, [plan_id=13471629]"];
subgraph cluster44 {
isCluster="true";
id="cluster44";
label="WholeStageCodegen (3)";
tooltip="WholeStageCodegen (3)";
45 [id="node45" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter (((isnotnull(shardId#13707264) AND (0_1_10000000265 = shardId#13707264)) AND isnotnull(product#13707265)) AND isnotnull(plant#13707266))"];
46 [id="node46" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
47 [id="node47" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 286<br>metadata time: 3 ms<br>size of files read: 854.7 KiB" tooltip="FileScan parquet [shardId#13707264,product#13707265,plant#13707266,orderDateTime#13707267,deliveryDateTime#13707268,availabilityDateTime#13707269,orderQuantityInBaseUnit#13707270,orderProposalId#13707271L] Batched: true, DataFilters: [isnotnull(shardId#13707264), (0_1_10000000265 = shardId#13707264), isnotnull(product#13707265), ..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000265), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string,orderDateTime:timestamp,deliveryDateTime:timest..."];
48 [id="node48" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 266 ms<br>number of output rows: 6<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471646]"];
subgraph cluster49 {
isCluster="true";
id="cluster49";
label="WholeStageCodegen (6)\n \nduration: total (min, med, max (stageId: taskId))\n29 ms (0 ms, 0 ms, 6 ms (stage 276747.0: task 4242237))";
tooltip="WholeStageCodegen (6)";
50 [id="node50" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132]"];
51 [id="node51" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter (((isnotnull(shardId#13191126) AND (0_1_10000000265 = shardId#13191126)) AND isnotnull(product#13191129)) AND isnotnull(plant#13191130))"];
}
52 [id="node52" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [periodEnd#13191132, periodStart#13191131, plant#13191130, product#13191129, shardId#13191126], [isnotnull(shardId#13191126), (0_1_10000000265 = shardId#13191126), isnotnull(product#13191129), isnotnull(plant#13191130)]"];
53 [id="node53" 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#13191129, plant#13191130, 30), REPARTITION_BY_NUM, [plan_id=13470641]"];
subgraph cluster54 {
isCluster="true";
id="cluster54";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
55 [id="node55" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#13191126,worklistShardItemId#13191127L,version#13191128,product#13191129,plant#13191130,periodStart#13191131,periodEnd#13191132,qty#13191133]"];
}
subgraph cluster56 {
isCluster="true";
id="cluster56";
label="WholeStageCodegen (14)";
tooltip="WholeStageCodegen (14)";
57 [id="node57" labelType="html" label="<br><b>Sort</b><br><br>" tooltip="Sort [minDistance#13707627L ASC NULLS FIRST, product#13707686 ASC NULLS FIRST, plant#13707687 ASC NULLS FIRST, configurationName#13707743 ASC NULLS FIRST], false, 0"];
}
58 [id="node58" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(minDistance#13707627L, product#13707686, plant#13707687, configurationName#13707743, 30), ENSURE_REQUIREMENTS, [plan_id=13471844]"];
subgraph cluster59 {
isCluster="true";
id="cluster59";
label="WholeStageCodegen (13)";
tooltip="WholeStageCodegen (13)";
60 [id="node60" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter isnotnull(minDistance#13707627L)"];
61 [id="node61" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#13707686, plant#13707687, configurationName#13707743], functions=[min(distance#13707745L)])"];
62 [id="node62" labelType="html" label="<br><b>HashAggregate</b><br><br>" tooltip="HashAggregate(keys=[product#13707686, plant#13707687, configurationName#13707743], functions=[partial_min(distance#13707745L)])"];
63 [id="node63" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707686, plant#13707687, explodedConf#13707742.configurationName AS configurationName#13707743, (cast(schedule#13707740.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707742.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707742.configurationValidityDatetime as bigint) END) AS distance#13707745L]"];
64 [id="node64" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((CASE WHEN isnull(explodedConf#13707742.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707742.configurationValidityDatetime as bigint) END <= cast(schedule#13707740.orderDatetime as bigint)) AND isnotnull(explodedConf#13707742.configurationName))"];
65 [id="node65" labelType="html" label="<br><b>Generate</b><br><br>" tooltip="Generate posexplode(configuration#13707697), [product#13707686, plant#13707687, schedule#13707740], true, [confPos#13707741, explodedConf#13707742]"];
66 [id="node66" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707686, plant#13707687, configuration#13707697, struct(orderDatetime, stockDatetime#13707689, availabilityDatetime, periodStart#13707736, demandPeriodEndDatetime, periodEnd#13707737, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#13707740]"];
67 [id="node67" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#13707686, plant#13707687], [product#13707734, plant#13707735], Inner, BuildRight, false"];
68 [id="node68" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]"];
69 [id="node69" labelType="html" label="<br><b>BroadcastHashJoin</b><br><br>" tooltip="BroadcastHashJoin [product#13707686, plant#13707687], [product#13707715, plant#13707716], LeftOuter, BuildRight, false"];
}
70 [id="node70" labelType="html" label="<b>Exchange</b><br><br>number of partitions: 30" tooltip="Exchange hashpartitioning(product#13707686, plant#13707687, 30), REPARTITION_BY_NUM, [plan_id=13471663]"];
subgraph cluster71 {
isCluster="true";
id="cluster71";
label="WholeStageCodegen (9)";
tooltip="WholeStageCodegen (9)";
72 [id="node72" labelType="html" label="<br><b>Filter</b><br><br>" tooltip="Filter ((isnotnull(product#13707686) AND isnotnull(plant#13707687)) AND isnotnull(stockDatetime#13707689))"];
73 [id="node73" labelType="html" label="<br><b>ColumnarToRow</b><br><br>" tooltip="ColumnarToRow"];
}
74 [id="node74" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 29<br>metadata time: 90 ms<br>size of files read: 387.9 KiB" tooltip="FileScan parquet [product#13707686,plant#13707687,stockDatetime#13707689,configuration#13707697] Batched: true, DataFilters: [isnotnull(product#13707686), isnotnull(plant#13707687), isnotnull(stockDatetime#13707689)], Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(product), IsNotNull(plant), IsNotNull(stockDatetime)], ReadSchema: struct<product:string,plant:string,stockDatetime:timestamp,configuration:array<struct<configurati..."];
75 [id="node75" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 2.7 s<br>number of output rows: 72<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471674]"];
subgraph cluster76 {
isCluster="true";
id="cluster76";
label="WholeStageCodegen (11)\n \nduration: total (min, med, max (stageId: taskId))\n760 ms (0 ms, 21 ms, 91 ms (stage 276754.0: task 4242483))";
tooltip="WholeStageCodegen (11)";
77 [id="node77" 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>117 ms (0 ms, 3 ms, 11 ms (stage 276754.0: task 4242480))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 276754.0: task 4242478))<br>number of output rows: 72<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#13707714, product#13707715, plant#13707716], functions=[])"];
78 [id="node78" 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>48 ms (0 ms, 2 ms, 3 ms (stage 276754.0: task 4242490))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 276754.0: task 4242478))<br>number of output rows: 72<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[shardId#13707714, product#13707715, plant#13707716], functions=[])"];
}
79 [id="node79" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 622<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 622<br>local bytes read total (min, med, max (stageId: taskId))<br>29.1 KiB (322.0 B, 1061.0 B, 2.3 KiB (stage 276754.0: task 4242490))<br>merged fetch fallback count: 0<br>local blocks read: 168<br>remote merged chunks fetched: 0<br>remote blocks read: 245<br>data size total (min, med, max (stageId: taskId))<br>68.0 KiB (896.0 B, 1792.0 B, 4.8 KiB (stage 276753.0: task 4242415))<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>31 ms (0 ms, 0 ms, 3 ms (stage 276753.0: task 4242449))<br>remote merged bytes read: 0.0 B<br>local merged blocks fetched: 0<br>corrupt merged block chunks: 0<br>fetch wait time total (min, med, max (stageId: taskId))<br>3 ms (0 ms, 0 ms, 1 ms (stage 276754.0: task 4242486))<br>remote bytes read total (min, med, max (stageId: taskId))<br>43.0 KiB (161.0 B, 1412.0 B, 4.0 KiB (stage 276754.0: task 4242491))<br>number of partitions: 30<br>remote reqs duration total (min, med, max (stageId: taskId))<br>119 ms (1 ms, 4 ms, 8 ms (stage 276754.0: task 4242483))<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>72.2 KiB (1021.0 B, 2.1 KiB, 4.5 KiB (stage 276753.0: task 4242415))" tooltip="Exchange hashpartitioning(product#13707715, plant#13707716, 30), REPARTITION_BY_NUM, [plan_id=13471669]"];
subgraph cluster80 {
isCluster="true";
id="cluster80";
label="WholeStageCodegen (10)\n \nduration: total (min, med, max (stageId: taskId))\n24.1 s (529 ms, 661 ms, 911 ms (stage 276753.0: task 4242459))";
tooltip="WholeStageCodegen (10)";
81 [id="node81" labelType="html" label="<b>Filter</b><br><br>number of output rows: 622" tooltip="Filter (((isnotnull(shardId#13707714) AND (0_1_10000000265 = shardId#13707714)) AND isnotnull(product#13707715)) AND isnotnull(plant#13707716))"];
82 [id="node82" labelType="html" label="<b>ColumnarToRow</b><br><br>number of output rows: 622<br>number of input batches: 286" tooltip="ColumnarToRow"];
}
83 [id="node83" labelType="html" label="<b>Scan parquet </b><br><br>number of files read: 286<br>scan time total (min, med, max (stageId: taskId))<br>23.2 s (521 ms, 637 ms, 903 ms (stage 276753.0: task 4242459))<br>metadata time: 318 ms<br>size of files read: 854.7 KiB<br>number of output rows: 622" tooltip="FileScan parquet [shardId#13707714,product#13707715,plant#13707716] Batched: true, DataFilters: [isnotnull(shardId#13707714), (0_1_10000000265 = shardId#13707714), isnotnull(product#13707715), ..., Format: Parquet, Location: PreparedDeltaFileIndex(1 paths)[hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20...., PartitionFilters: [], PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000265), IsNotNull(product), IsNotNull(plant)], ReadSchema: struct<shardId:string,product:string,plant:string>"];
84 [id="node84" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 658 ms<br>number of output rows: 6<br>data size: 2.0 MiB" tooltip="BroadcastExchange HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471716]"];
85 [id="node85" labelType="html" label="<br><b>Union</b><br><br>" tooltip="Union"];
86 [id="node86" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build total (min, med, max (stageId: taskId))<br>0 ms (0 ms, 0 ms, 0 ms (stage 276748.0: task 4242252))<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[product#13707808, plant#13707809], functions=[collect_list(qty#13707812, 0, 0)])"];
87 [id="node87" labelType="html" label="<b>ObjectHashAggregate</b><br><br>number of output rows: 0<br>time in aggregation build total (min, med, max (stageId: taskId))<br>16 ms (0 ms, 0 ms, 3 ms (stage 276748.0: task 4242383))<br>spill size: 0.0 B<br>number of sort fallback tasks: 0" tooltip="ObjectHashAggregate(keys=[product#13707808, plant#13707809], functions=[partial_collect_list(qty#13707812, 0, 0)])"];
subgraph cluster88 {
isCluster="true";
id="cluster88";
label="WholeStageCodegen (16)\n \nduration: total (min, med, max (stageId: taskId))\n16 ms (0 ms, 0 ms, 3 ms (stage 276748.0: task 4242383))";
tooltip="WholeStageCodegen (16)";
89 [id="node89" labelType="html" label="<b>Filter</b><br><br>number of output rows: 0" tooltip="Filter ((isnotnull(qty#13707812) AND isnotnull(product#13707808)) AND isnotnull(plant#13707809))"];
}
90 [id="node90" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 0" tooltip="InMemoryTableScan [product#13707808, plant#13707809, qty#13707812], [isnotnull(qty#13707812), isnotnull(product#13707808), isnotnull(plant#13707809)]"];
91 [id="node91" 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#13191129, plant#13191130, 30), REPARTITION_BY_NUM, [plan_id=13470641]"];
subgraph cluster92 {
isCluster="true";
id="cluster92";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
93 [id="node93" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#13191126,worklistShardItemId#13191127L,version#13191128,product#13191129,plant#13191130,periodStart#13191131,periodEnd#13191132,qty#13191133]"];
}
subgraph cluster94 {
isCluster="true";
id="cluster94";
label="WholeStageCodegen (17)\n \nduration: total (min, med, max (stageId: taskId))\n13 ms (0 ms, 0 ms, 3 ms (stage 276748.0: task 4242401))";
tooltip="WholeStageCodegen (17)";
95 [id="node95" labelType="html" label="<br><b>Project</b><br><br>" tooltip="Project [product#13707800, plant#13707801, [] AS requestedQuantities#13707786]"];
96 [id="node96" labelType="html" label="<b>Filter</b><br><br>number of output rows: 6" tooltip="Filter ((isnull(qty#13707804) AND isnotnull(product#13707800)) AND isnotnull(plant#13707801))"];
}
97 [id="node97" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan [plant#13707801, product#13707800, qty#13707804], [isnull(qty#13707804), isnotnull(product#13707800), isnotnull(plant#13707801)]"];
98 [id="node98" 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#13191129, plant#13191130, 30), REPARTITION_BY_NUM, [plan_id=13470641]"];
subgraph cluster99 {
isCluster="true";
id="cluster99";
label="WholeStageCodegen (1)";
tooltip="WholeStageCodegen (1)";
100 [id="node100" labelType="html" label="<br><b>Scan ExistingRDD</b><br><br>" tooltip="Scan ExistingRDD[shardId#13191126,worklistShardItemId#13191127L,version#13191128,product#13191129,plant#13191130,periodStart#13191131,periodEnd#13191132,qty#13191133]"];
}
101 [id="node101" labelType="html" label="<b>BroadcastExchange</b><br><br>time to broadcast: 0 ms<br>time to build: 0 ms<br>time to collect: 763 ms<br>number of output rows: 1<br>data size: 392.0 B" tooltip="BroadcastExchange IdentityBroadcastMode, [plan_id=13471733]"];
subgraph cluster102 {
isCluster="true";
id="cluster102";
label="WholeStageCodegen (20)\n \nduration: total (min, med, max (stageId: taskId))\n178 ms (0 ms, 0 ms, 133 ms (stage 276750.0: task 4242407))";
tooltip="WholeStageCodegen (20)";
103 [id="node103" labelType="html" label="<b>HashAggregate</b><br><br>spill size: 0.0 B<br>time in aggregation build total (min, med, max (stageId: taskId))<br>10 ms (0 ms, 0 ms, 6 ms (stage 276750.0: task 4242407))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 276750.0: task 4242406))<br>number of output rows: 1<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1#13708679], functions=[])"];
}
104 [id="node104" labelType="html" label="<b>Exchange</b><br><br>shuffle records written: 4<br>remote merged reqs duration: 0 ms<br>remote merged blocks fetched: 0<br>records read: 4<br>local bytes read: 150.0 B<br>merged fetch fallback count: 0<br>local blocks read: 2<br>remote merged chunks fetched: 0<br>remote blocks read: 2<br>data size total (min, med, max (stageId: taskId))<br>64.0 B (16.0 B, 16.0 B, 16.0 B (stage 276749.0: task 4242280))<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>1 ms (0 ms, 0 ms, 0 ms (stage 276749.0: task 4242316))<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: 150.0 B<br>number of partitions: 30<br>remote reqs duration: 1 ms<br>remote bytes read to disk: 0.0 B<br>shuffle bytes written total (min, med, max (stageId: taskId))<br>300.0 B (75.0 B, 75.0 B, 75.0 B (stage 276749.0: task 4242280))" tooltip="Exchange hashpartitioning(1#13708679, 30), ENSURE_REQUIREMENTS, [plan_id=13471729]"];
subgraph cluster105 {
isCluster="true";
id="cluster105";
label="WholeStageCodegen (19)\n \nduration: total (min, med, max (stageId: taskId))\n364 ms (0 ms, 0 ms, 85 ms (stage 276749.0: task 4242257))";
tooltip="WholeStageCodegen (19)";
106 [id="node106" 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>5 ms (0 ms, 0 ms, 2 ms (stage 276749.0: task 4242387))<br>peak memory total (min, med, max (stageId: taskId))<br>7.5 MiB (256.0 KiB, 256.0 KiB, 256.0 KiB (stage 276749.0: task 4242253))<br>number of output rows: 4<br>number of sort fallback tasks: 0<br>avg hash probes per key: 0" tooltip="HashAggregate(keys=[1 AS 1#13708679], functions=[])"];
}
107 [id="node107" labelType="html" label="<b>InMemoryTableScan</b><br><br>number of output rows: 6" tooltip="InMemoryTableScan"];
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#13191129, plant#13191130, 30), REPARTITION_BY_NUM, [plan_id=13470641]"];
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#13191126,worklistShardItemId#13191127L,version#13191128,product#13191129,plant#13191130,periodStart#13191131,periodEnd#13191132,qty#13191133]"];
}
2->0;
3->2;
4->3;
5->4;
7->5;
8->7;
9->8;
10->9;
11->10;
12->11;
13->12;
15->13;
16->15;
18->16;
19->18;
21->19;
22->21;
23->22;
24->23;
25->24;
26->25;
27->26;
29->27;
30->29;
31->30;
33->31;
34->33;
35->34;
37->27;
38->37;
39->38;
41->39;
42->41;
43->42;
45->43;
46->45;
47->46;
48->25;
50->48;
51->50;
52->51;
53->52;
55->53;
57->16;
58->57;
60->58;
61->60;
62->61;
63->62;
64->63;
65->64;
66->65;
67->66;
68->67;
69->68;
70->69;
72->70;
73->72;
74->73;
75->69;
77->75;
78->77;
79->78;
81->79;
82->81;
83->82;
48->67;
84->9;
85->84;
86->85;
87->86;
89->87;
90->89;
91->90;
93->91;
95->85;
96->95;
97->96;
98->97;
100->98;
101->2;
103->101;
104->103;
106->104;
107->106;
108->107;
110->108;
}
== Physical Plan ==
DeserializeToObject (86)
+- * BroadcastNestedLoopJoin Cross BuildRight (85)
:- * SerializeFromObject (78)
: +- MapPartitions (77)
: +- DeserializeToObject (76)
: +- * Project (75)
: +- * Project (74)
: +- * BroadcastHashJoin Inner BuildRight (73)
: :- Project (61)
: : +- ObjectHashAggregate (60)
: : +- Exchange (59)
: : +- ObjectHashAggregate (58)
: : +- * Project (57)
: : +- * SortMergeJoin Inner (56)
: : :- * Sort (31)
: : : +- Exchange (30)
: : : +- * Project (29)
: : : +- * Filter (28)
: : : +- * Generate (27)
: : : +- * Project (26)
: : : +- * BroadcastHashJoin Inner BuildRight (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)
: : : +- BroadcastExchange (24)
: : : +- * Project (23)
: : : +- * Filter (22)
: : : +- InMemoryTableScan (18)
: : : +- InMemoryRelation (19)
: : : +- Exchange (21)
: : : +- * Scan ExistingRDD (20)
: : +- * Sort (55)
: : +- Exchange (54)
: : +- * Filter (53)
: : +- * HashAggregate (52)
: : +- * HashAggregate (51)
: : +- * Project (50)
: : +- * Filter (49)
: : +- * Generate (48)
: : +- * Project (47)
: : +- * BroadcastHashJoin Inner BuildRight (46)
: : :- * Project (44)
: : : +- * BroadcastHashJoin LeftOuter BuildRight (43)
: : : :- Exchange (35)
: : : : +- * Filter (34)
: : : : +- * ColumnarToRow (33)
: : : : +- Scan parquet (32)
: : : +- BroadcastExchange (42)
: : : +- * HashAggregate (41)
: : : +- * HashAggregate (40)
: : : +- Exchange (39)
: : : +- * Filter (38)
: : : +- * ColumnarToRow (37)
: : : +- Scan parquet (36)
: : +- ReusedExchange (45)
: +- BroadcastExchange (72)
: +- Union (71)
: :- ObjectHashAggregate (66)
: : +- ObjectHashAggregate (65)
: : +- * Filter (64)
: : +- InMemoryTableScan (62)
: : +- InMemoryRelation (63)
: : +- Exchange (21)
: : +- * Scan ExistingRDD (20)
: +- * Project (70)
: +- * Filter (69)
: +- InMemoryTableScan (67)
: +- InMemoryRelation (68)
: +- Exchange (21)
: +- * Scan ExistingRDD (20)
+- BroadcastExchange (84)
+- * HashAggregate (83)
+- Exchange (82)
+- * HashAggregate (81)
+- InMemoryTableScan (79)
+- InMemoryRelation (80)
+- Exchange (21)
+- * Scan ExistingRDD (20)
(1) Scan parquet
Output [16]: [product#13707015, plant#13707016, outboundUnit#13707017, stockDatetime#13707018, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementQuantities#13707023, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementShelfLifeEndDatetimes#13707025, configuration#13707026, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000265/0_1_10000000265]
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#13707015, plant#13707016, outboundUnit#13707017, stockDatetime#13707018, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementQuantities#13707023, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementShelfLifeEndDatetimes#13707025, configuration#13707026, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030]
(3) Filter [codegen id : 1]
Input [16]: [product#13707015, plant#13707016, outboundUnit#13707017, stockDatetime#13707018, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementQuantities#13707023, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementShelfLifeEndDatetimes#13707025, configuration#13707026, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030]
Condition : ((isnotnull(product#13707015) AND isnotnull(plant#13707016)) AND isnotnull(stockDatetime#13707018))
(4) Exchange
Input [16]: [product#13707015, plant#13707016, outboundUnit#13707017, stockDatetime#13707018, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementQuantities#13707023, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementShelfLifeEndDatetimes#13707025, configuration#13707026, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030]
Arguments: hashpartitioning(product#13707015, plant#13707016, 30), REPARTITION_BY_NUM, [plan_id=13471619]
(5) Project [codegen id : 2]
Output [18]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementQuantities#13707023, openGoodsMovementShelfLifeEndDatetimes#13707025, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementAvailabilityDatetimes#13707024 AS openGoodsMovementOrderDatetimes#13707051, cast(struct(plantId, plant#13707016, 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#13707014]
Input [16]: [product#13707015, plant#13707016, outboundUnit#13707017, stockDatetime#13707018, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementQuantities#13707023, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementShelfLifeEndDatetimes#13707025, configuration#13707026, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030]
(6) Sort [codegen id : 2]
Input [18]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementQuantities#13707023, openGoodsMovementShelfLifeEndDatetimes#13707025, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707051, plantOperatingTimes#13707014]
Arguments: [product#13707015 ASC NULLS FIRST, plant#13707016 ASC NULLS FIRST], false, 0
(7) Scan parquet
Output [8]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, deliveryDateTime#13707268, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270, orderProposalId#13707271L]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000265/stream-10000000265-1/shardId=0_1_10000000265]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000265), 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#13707264, product#13707265, plant#13707266, orderDateTime#13707267, deliveryDateTime#13707268, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270, orderProposalId#13707271L]
(9) Filter [codegen id : 3]
Input [8]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, deliveryDateTime#13707268, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270, orderProposalId#13707271L]
Condition : (((isnotnull(shardId#13707264) AND (0_1_10000000265 = shardId#13707264)) AND isnotnull(product#13707265)) AND isnotnull(plant#13707266))
(10) Exchange
Input [8]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, deliveryDateTime#13707268, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270, orderProposalId#13707271L]
Arguments: hashpartitioning(product#13707265, plant#13707266, 30), REPARTITION_BY_NUM, [plan_id=13471629]
(11) HashAggregate [codegen id : 4]
Input [8]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, deliveryDateTime#13707268, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270, orderProposalId#13707271L]
Keys [8]: [plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, knownfloatingpointnormalized(normalizenanandzero(orderQuantityInBaseUnit#13707270)) AS orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265]
Functions: []
Aggregate Attributes: []
Results [8]: [plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265]
(12) HashAggregate [codegen id : 4]
Input [8]: [plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265]
Keys [8]: [plant#13707266, availabilityDateTime#13707269, orderProposalId#13707271L, shardId#13707264, orderDateTime#13707267, orderQuantityInBaseUnit#13707270, deliveryDateTime#13707268, product#13707265]
Functions: []
Aggregate Attributes: []
Results [6]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270]
(13) ObjectHashAggregate
Input [6]: [shardId#13707264, product#13707265, plant#13707266, orderDateTime#13707267, availabilityDateTime#13707269, orderQuantityInBaseUnit#13707270]
Keys [3]: [shardId#13707264, product#13707265, plant#13707266]
Functions [4]: [partial_collect_list(orderDatetime#13707267, 0, 0), partial_collect_list(availabilityDatetime#13707269, 0, 0), partial_collect_list(orderQuantityInBaseUnit#13707270, 0, 0), partial_collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [buf#13708667, buf#13708668, buf#13708669, buf#13708670]
Results [7]: [shardId#13707264, product#13707265, plant#13707266, buf#13708671, buf#13708672, buf#13708673, buf#13708674]
(14) ObjectHashAggregate
Input [7]: [shardId#13707264, product#13707265, plant#13707266, buf#13708671, buf#13708672, buf#13708673, buf#13708674]
Keys [3]: [shardId#13707264, product#13707265, plant#13707266]
Functions [4]: [collect_list(orderDatetime#13707267, 0, 0), collect_list(availabilityDatetime#13707269, 0, 0), collect_list(orderQuantityInBaseUnit#13707270, 0, 0), collect_list(2199-01-01 00:00:00, 0, 0)]
Aggregate Attributes [4]: [collect_list(orderDatetime#13707267, 0, 0)#13707606, collect_list(availabilityDatetime#13707269, 0, 0)#13707607, collect_list(orderQuantityInBaseUnit#13707270, 0, 0)#13707608, collect_list(2199-01-01 00:00:00, 0, 0)#13707609]
Results [6]: [product#13707265, plant#13707266, collect_list(orderDatetime#13707267, 0, 0)#13707606 AS aggOrderDateTimes#13707593, collect_list(availabilityDatetime#13707269, 0, 0)#13707607 AS aggAvailabilityDateTimes#13707594, collect_list(orderQuantityInBaseUnit#13707270, 0, 0)#13707608 AS aggQuantities#13707595, collect_list(2199-01-01 00:00:00, 0, 0)#13707609 AS aggShelfLifeEndDateTimes#13707596]
(15) Sort [codegen id : 5]
Input [6]: [product#13707265, plant#13707266, aggOrderDateTimes#13707593, aggAvailabilityDateTimes#13707594, aggQuantities#13707595, aggShelfLifeEndDateTimes#13707596]
Arguments: [product#13707265 ASC NULLS FIRST, plant#13707266 ASC NULLS FIRST], false, 0
(16) SortMergeJoin [codegen id : 7]
Left keys [2]: [product#13707015, plant#13707016]
Right keys [2]: [product#13707265, plant#13707266]
Join type: LeftOuter
Join condition: None
(17) Project [codegen id : 7]
Output [18]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, coalesce(concat(openGoodsMovementAvailabilityDatetimes#13707024, aggAvailabilityDateTimes#13707594), openGoodsMovementAvailabilityDatetimes#13707024) AS openGoodsMovementAvailabilityDatetimes#13707611, coalesce(concat(openGoodsMovementQuantities#13707023, aggQuantities#13707595), openGoodsMovementQuantities#13707023) AS openGoodsMovementQuantities#13707612, coalesce(concat(openGoodsMovementShelfLifeEndDatetimes#13707025, aggShelfLifeEndDateTimes#13707596), openGoodsMovementShelfLifeEndDatetimes#13707025) AS openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, coalesce(concat(openGoodsMovementOrderDatetimes#13707051, aggOrderDateTimes#13707593), openGoodsMovementOrderDatetimes#13707051) AS openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014]
Input [24]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707024, openGoodsMovementQuantities#13707023, openGoodsMovementShelfLifeEndDatetimes#13707025, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707051, plantOperatingTimes#13707014, product#13707265, plant#13707266, aggOrderDateTimes#13707593, aggAvailabilityDateTimes#13707594, aggQuantities#13707595, aggShelfLifeEndDateTimes#13707596]
(18) InMemoryTableScan
Output [5]: [periodEnd#13191132, periodStart#13191131, plant#13191130, product#13191129, shardId#13191126]
Arguments: [periodEnd#13191132, periodStart#13191131, plant#13191130, product#13191129, shardId#13191126], [isnotnull(shardId#13191126), (0_1_10000000265 = shardId#13191126), isnotnull(product#13191129), isnotnull(plant#13191130)]
(19) InMemoryRelation
Arguments: [shardId#13191126, worklistShardItemId#13191127L, version#13191128, product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132, qty#13191133], StorageLevel(disk, memory, 2 replicas)
(20) Scan ExistingRDD [codegen id : 1]
Output [8]: [shardId#13191126, worklistShardItemId#13191127L, version#13191128, product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132, qty#13191133]
Arguments: [shardId#13191126, worklistShardItemId#13191127L, version#13191128, product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132, qty#13191133], SQLExecutionRDD[784152] at start at FileStorageAdapterImpl.java:174, ExistingRDD, UnknownPartitioning(0)
(21) Exchange
Input [8]: [shardId#13191126, worklistShardItemId#13191127L, version#13191128, product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132, qty#13191133]
Arguments: hashpartitioning(product#13191129, plant#13191130, 30), REPARTITION_BY_NUM, [plan_id=13470641]
(22) Filter [codegen id : 6]
Input [5]: [periodEnd#13191132, periodStart#13191131, plant#13191130, product#13191129, shardId#13191126]
Condition : (((isnotnull(shardId#13191126) AND (0_1_10000000265 = shardId#13191126)) AND isnotnull(product#13191129)) AND isnotnull(plant#13191130))
(23) Project [codegen id : 6]
Output [4]: [product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132]
Input [5]: [periodEnd#13191132, periodStart#13191131, plant#13191130, product#13191129, shardId#13191126]
(24) BroadcastExchange
Input [4]: [product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471646]
(25) BroadcastHashJoin [codegen id : 7]
Left keys [2]: [product#13707015, plant#13707016]
Right keys [2]: [product#13191129, plant#13191130]
Join type: Inner
Join condition: None
(26) Project [codegen id : 7]
Output [19]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, struct(orderDatetime, stockDatetime#13707018, availabilityDatetime, periodStart#13191131, demandPeriodEndDatetime, periodEnd#13191132, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#13707618]
Input [22]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, product#13191129, plant#13191130, periodStart#13191131, periodEnd#13191132]
(27) Generate [codegen id : 7]
Input [19]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, configuration#13707026, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618]
Arguments: posexplode(configuration#13707026), [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618], true, [confPos#13707619, explodedConf#13707620]
(28) Filter [codegen id : 7]
Input [20]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620]
Condition : (((CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END <= cast(schedule#13707618.orderDatetime as bigint)) AND isnotnull((cast(schedule#13707618.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END))) AND isnotnull(explodedConf#13707620.configurationName))
(29) Project [codegen id : 7]
Output [22]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620, explodedConf#13707620.configurationName AS configurationName#13707621, (cast(schedule#13707618.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707620.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707620.configurationValidityDatetime as bigint) END) AS distance#13707625L]
Input [20]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620]
(30) Exchange
Input [22]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620, configurationName#13707621, distance#13707625L]
Arguments: hashpartitioning(distance#13707625L, product#13707015, plant#13707016, configurationName#13707621, 30), ENSURE_REQUIREMENTS, [plan_id=13471654]
(31) Sort [codegen id : 8]
Input [22]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620, configurationName#13707621, distance#13707625L]
Arguments: [distance#13707625L ASC NULLS FIRST, product#13707015 ASC NULLS FIRST, plant#13707016 ASC NULLS FIRST, configurationName#13707621 ASC NULLS FIRST], false, 0
(32) Scan parquet
Output [4]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-quantity-kpi-service/internal/data-snapshot/10000000265/0_1_10000000265]
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 : 9]
Input [4]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]
(34) Filter [codegen id : 9]
Input [4]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]
Condition : ((isnotnull(product#13707686) AND isnotnull(plant#13707687)) AND isnotnull(stockDatetime#13707689))
(35) Exchange
Input [4]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]
Arguments: hashpartitioning(product#13707686, plant#13707687, 30), REPARTITION_BY_NUM, [plan_id=13471663]
(36) Scan parquet
Output [3]: [shardId#13707714, product#13707715, plant#13707716]
Batched: true
Location: PreparedDeltaFileIndex [hdlfs://25570170-65a4-43d6-a97a-474f9553b696.files.hdl.prod-eu20.hanacloud.ondemand.com:443/crp-order-qty-opt-service/out/order-proposal-quantities/10000000265/stream-10000000265-1/shardId=0_1_10000000265]
PushedFilters: [IsNotNull(shardId), EqualTo(shardId,0_1_10000000265), IsNotNull(product), IsNotNull(plant)]
ReadSchema: struct<shardId:string,product:string,plant:string>
(37) ColumnarToRow [codegen id : 10]
Input [3]: [shardId#13707714, product#13707715, plant#13707716]
(38) Filter [codegen id : 10]
Input [3]: [shardId#13707714, product#13707715, plant#13707716]
Condition : (((isnotnull(shardId#13707714) AND (0_1_10000000265 = shardId#13707714)) AND isnotnull(product#13707715)) AND isnotnull(plant#13707716))
(39) Exchange
Input [3]: [shardId#13707714, product#13707715, plant#13707716]
Arguments: hashpartitioning(product#13707715, plant#13707716, 30), REPARTITION_BY_NUM, [plan_id=13471669]
(40) HashAggregate [codegen id : 11]
Input [3]: [shardId#13707714, product#13707715, plant#13707716]
Keys [3]: [shardId#13707714, product#13707715, plant#13707716]
Functions: []
Aggregate Attributes: []
Results [3]: [shardId#13707714, product#13707715, plant#13707716]
(41) HashAggregate [codegen id : 11]
Input [3]: [shardId#13707714, product#13707715, plant#13707716]
Keys [3]: [shardId#13707714, product#13707715, plant#13707716]
Functions: []
Aggregate Attributes: []
Results [2]: [product#13707715, plant#13707716]
(42) BroadcastExchange
Input [2]: [product#13707715, plant#13707716]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471674]
(43) BroadcastHashJoin [codegen id : 13]
Left keys [2]: [product#13707686, plant#13707687]
Right keys [2]: [product#13707715, plant#13707716]
Join type: LeftOuter
Join condition: None
(44) Project [codegen id : 13]
Output [4]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697]
Input [6]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697, product#13707715, plant#13707716]
(45) ReusedExchange [Reuses operator id: 24]
Output [4]: [product#13707734, plant#13707735, periodStart#13707736, periodEnd#13707737]
(46) BroadcastHashJoin [codegen id : 13]
Left keys [2]: [product#13707686, plant#13707687]
Right keys [2]: [product#13707734, plant#13707735]
Join type: Inner
Join condition: None
(47) Project [codegen id : 13]
Output [4]: [product#13707686, plant#13707687, configuration#13707697, struct(orderDatetime, stockDatetime#13707689, availabilityDatetime, periodStart#13707736, demandPeriodEndDatetime, periodEnd#13707737, shelfLifeEndDatetime, 2199-01-01 00:00:00) AS schedule#13707740]
Input [8]: [product#13707686, plant#13707687, stockDatetime#13707689, configuration#13707697, product#13707734, plant#13707735, periodStart#13707736, periodEnd#13707737]
(48) Generate [codegen id : 13]
Input [4]: [product#13707686, plant#13707687, configuration#13707697, schedule#13707740]
Arguments: posexplode(configuration#13707697), [product#13707686, plant#13707687, schedule#13707740], true, [confPos#13707741, explodedConf#13707742]
(49) Filter [codegen id : 13]
Input [5]: [product#13707686, plant#13707687, schedule#13707740, confPos#13707741, explodedConf#13707742]
Condition : ((CASE WHEN isnull(explodedConf#13707742.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707742.configurationValidityDatetime as bigint) END <= cast(schedule#13707740.orderDatetime as bigint)) AND isnotnull(explodedConf#13707742.configurationName))
(50) Project [codegen id : 13]
Output [4]: [product#13707686, plant#13707687, explodedConf#13707742.configurationName AS configurationName#13707743, (cast(schedule#13707740.orderDatetime as bigint) - CASE WHEN isnull(explodedConf#13707742.configurationValidityDatetime) THEN 0 ELSE cast(explodedConf#13707742.configurationValidityDatetime as bigint) END) AS distance#13707745L]
Input [5]: [product#13707686, plant#13707687, schedule#13707740, confPos#13707741, explodedConf#13707742]
(51) HashAggregate [codegen id : 13]
Input [4]: [product#13707686, plant#13707687, configurationName#13707743, distance#13707745L]
Keys [3]: [product#13707686, plant#13707687, configurationName#13707743]
Functions [1]: [partial_min(distance#13707745L)]
Aggregate Attributes [1]: [min#13708675L]
Results [4]: [product#13707686, plant#13707687, configurationName#13707743, min#13708676L]
(52) HashAggregate [codegen id : 13]
Input [4]: [product#13707686, plant#13707687, configurationName#13707743, min#13708676L]
Keys [3]: [product#13707686, plant#13707687, configurationName#13707743]
Functions [1]: [min(distance#13707745L)]
Aggregate Attributes [1]: [min(distance#13707745L)#13707653L]
Results [4]: [product#13707686, plant#13707687, configurationName#13707743, min(distance#13707745L)#13707653L AS minDistance#13707627L]
(53) Filter [codegen id : 13]
Input [4]: [product#13707686, plant#13707687, configurationName#13707743, minDistance#13707627L]
Condition : isnotnull(minDistance#13707627L)
(54) Exchange
Input [4]: [product#13707686, plant#13707687, configurationName#13707743, minDistance#13707627L]
Arguments: hashpartitioning(minDistance#13707627L, product#13707686, plant#13707687, configurationName#13707743, 30), ENSURE_REQUIREMENTS, [plan_id=13471844]
(55) Sort [codegen id : 14]
Input [4]: [product#13707686, plant#13707687, configurationName#13707743, minDistance#13707627L]
Arguments: [minDistance#13707627L ASC NULLS FIRST, product#13707686 ASC NULLS FIRST, plant#13707687 ASC NULLS FIRST, configurationName#13707743 ASC NULLS FIRST], false, 0
(56) SortMergeJoin [codegen id : 15]
Left keys [4]: [distance#13707625L, product#13707015, plant#13707016, configurationName#13707621]
Right keys [4]: [minDistance#13707627L, product#13707686, plant#13707687, configurationName#13707743]
Join type: Inner
Join condition: None
(57) Project [codegen id : 15]
Output [20]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620]
Input [26]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620, configurationName#13707621, distance#13707625L, product#13707686, plant#13707687, configurationName#13707743, minDistance#13707627L]
(58) ObjectHashAggregate
Input [20]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, confPos#13707619, explodedConf#13707620]
Keys [19]: [0_1_10000000265 AS 0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, knownfloatingpointnormalized(normalizenanandzero(outboundUnit#13707017)) AS outboundUnit#13707017, knownfloatingpointnormalized(transform(stockBatchQuantities#13707019, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708656)), lambda arg#13708656, false))) AS stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, knownfloatingpointnormalized(transform(dayBucketDemands#13707021, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#13708657)) null else named_struct(demandChannel, lambda arg#13708657.demandChannel, demandStream, lambda arg#13708657.demandStream, considerVariance, lambda arg#13708657.considerVariance, demandValues, knownfloatingpointnormalized(transform(lambda arg#13708657.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708658)), lambda arg#13708658, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#13708657.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708659)), lambda arg#13708659, false))), anchorDatetimes, lambda arg#13708657.anchorDatetimes, anchorWeekdays, lambda arg#13708657.anchorWeekdays, anchorIndices, lambda arg#13708657.anchorIndices)), lambda arg#13708657, false))) AS dayBucketDemands#13707021, knownfloatingpointnormalized(transform(pointInTimeDemands#13707022, lambdafunction(knownfloatingpointnormalized(if (isnull(lambda arg#13708660)) null else named_struct(demandChannel, lambda arg#13708660.demandChannel, demandStream, lambda arg#13708660.demandStream, considerVariance, lambda arg#13708660.considerVariance, demandDatetimes, lambda arg#13708660.demandDatetimes, demandValues, knownfloatingpointnormalized(transform(lambda arg#13708660.demandValues, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708661)), lambda arg#13708661, false))), demandVariances, knownfloatingpointnormalized(transform(lambda arg#13708660.demandVariances, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708662)), lambda arg#13708662, false))), horizonStartDatetime, lambda arg#13708660.horizonStartDatetime, horizonEndDatetime, lambda arg#13708660.horizonEndDatetime)), lambda arg#13708660, false))) AS pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, knownfloatingpointnormalized(transform(openGoodsMovementQuantities#13707612, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708663)), lambda arg#13708663, false))) AS openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, knownfloatingpointnormalized(transform(timeDependentSettingsValue#13707030, lambdafunction(knownfloatingpointnormalized(normalizenanandzero(lambda arg#13708664)), lambda arg#13708664, false))) AS timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618]
Functions [1]: [partial_collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)]
Aggregate Attributes [1]: [buf#13708665]
Results [20]: [0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, buf#13708666]
(59) Exchange
Input [20]: [0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, buf#13708666]
Arguments: hashpartitioning(0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, 30), ENSURE_REQUIREMENTS, [plan_id=13471879]
(60) ObjectHashAggregate
Input [20]: [0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, buf#13708666]
Keys [19]: [0_1_10000000265#13708655, product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618]
Functions [1]: [collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)]
Aggregate Attributes [1]: [collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)#13707772]
Results [19]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, sort_array(collect_list(struct(confPos, confPos#13707619, explodedConf, explodedConf#13707620), 0, 0)#13707772, true) AS configurations#13707748]
(61) Project
Output [19]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, struct(names, transform(configurations#13707748, lambdafunction(lambda x#13707776.explodedConf.configurationName, lambda x#13707776, false)), values, transform(configurations#13707748, lambdafunction(lambda x#13707777.explodedConf.configurationValue, lambda x#13707777, false))) AS configuration#13707775]
Input [19]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, configurations#13707748]
(62) InMemoryTableScan
Output [3]: [product#13707808, plant#13707809, qty#13707812]
Arguments: [product#13707808, plant#13707809, qty#13707812], [isnotnull(qty#13707812), isnotnull(product#13707808), isnotnull(plant#13707809)]
(63) InMemoryRelation
Arguments: [shardId#13707805, worklistShardItemId#13707806L, version#13707807, product#13707808, plant#13707809, periodStart#13707810, periodEnd#13707811, qty#13707812], StorageLevel(disk, memory, 2 replicas)
(64) Filter [codegen id : 16]
Input [3]: [product#13707808, plant#13707809, qty#13707812]
Condition : ((isnotnull(qty#13707812) AND isnotnull(product#13707808)) AND isnotnull(plant#13707809))
(65) ObjectHashAggregate
Input [3]: [product#13707808, plant#13707809, qty#13707812]
Keys [2]: [product#13707808, plant#13707809]
Functions [1]: [partial_collect_list(qty#13707812, 0, 0)]
Aggregate Attributes [1]: [buf#13708677]
Results [3]: [product#13707808, plant#13707809, buf#13708678]
(66) ObjectHashAggregate
Input [3]: [product#13707808, plant#13707809, buf#13708678]
Keys [2]: [product#13707808, plant#13707809]
Functions [1]: [collect_list(qty#13707812, 0, 0)]
Aggregate Attributes [1]: [collect_list(qty#13707812, 0, 0)#13707796]
Results [3]: [product#13707808, plant#13707809, collect_list(qty#13707812, 0, 0)#13707796 AS requestedQuantities#13707787]
(67) InMemoryTableScan
Output [3]: [plant#13707801, product#13707800, qty#13707804]
Arguments: [plant#13707801, product#13707800, qty#13707804], [isnull(qty#13707804), isnotnull(product#13707800), isnotnull(plant#13707801)]
(68) InMemoryRelation
Arguments: [shardId#13707797, worklistShardItemId#13707798L, version#13707799, product#13707800, plant#13707801, periodStart#13707802, periodEnd#13707803, qty#13707804], StorageLevel(disk, memory, 2 replicas)
(69) Filter [codegen id : 17]
Input [3]: [plant#13707801, product#13707800, qty#13707804]
Condition : ((isnull(qty#13707804) AND isnotnull(product#13707800)) AND isnotnull(plant#13707801))
(70) Project [codegen id : 17]
Output [3]: [product#13707800, plant#13707801, [] AS requestedQuantities#13707786]
Input [3]: [plant#13707801, product#13707800, qty#13707804]
(71) Union
(72) BroadcastExchange
Input [3]: [product#13707808, plant#13707809, requestedQuantities#13707787]
Arguments: HashedRelationBroadcastMode(List(input[0, string, true], input[1, string, true]),false), [plan_id=13471716]
(73) BroadcastHashJoin [codegen id : 18]
Left keys [2]: [product#13707015, plant#13707016]
Right keys [2]: [product#13707808, plant#13707809]
Join type: Inner
Join condition: None
(74) Project [codegen id : 18]
Output [3]: [plantOperatingTimes#13707014, struct(productId, product#13707015, plantId, plant#13707016, requestedQuantities, requestedQuantities#13707787, outboundUnit, outboundUnit#13707017, stock, struct(stockBatchQuantities, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes, stockBatchShelfLifeEndDatetimes#13707020, stockDatetime, stockDatetime#13707018), demand, struct(dayBucketDemands, dayBucketDemands#13707021, pointInTimeDemands, pointInTimeDemands#13707022), schedule, schedule#13707618, openGoodsMovements, struct(orderDatetimes, CASE WHEN (isnotnull(openGoodsMovementOrderDatetimes#13707610) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementOrderDatetimes#13707610 ELSE [] END, availabilityDatetimes, CASE WHEN (isnotnull(openGoodsMovementAvailabilityDatetimes#13707611) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementAvailabilityDatetimes#13707611 ELSE [] END, quantities, CASE WHEN isnotnull(openGoodsMovementQuantities#13707612) THEN openGoodsMovementQuantities#13707612 ELSE [] END, shelfLifeEndDatetimes, CASE WHEN (isnotnull(openGoodsMovementShelfLifeEndDatetimes#13707613) AND isnotnull(openGoodsMovementQuantities#13707612)) THEN openGoodsMovementShelfLifeEndDatetimes#13707613 ELSE [] END), timeDependentSettings, struct(endDatetimes, timeDependentSettingsEndDatetime#13707029, names, timeDependentSettingsName#13707027, startDatetimes, timeDependentSettingsStartDatetime#13707028, values, timeDependentSettingsValue#13707030), configuration, configuration#13707775) AS ProductPlantQuantityInformation#13707831, SPARK_PARTITION_ID() AS executionID#13707832]
Input [22]: [product#13707015, plant#13707016, stockDatetime#13707018, outboundUnit#13707017, stockBatchQuantities#13707019, stockBatchShelfLifeEndDatetimes#13707020, dayBucketDemands#13707021, pointInTimeDemands#13707022, openGoodsMovementAvailabilityDatetimes#13707611, openGoodsMovementQuantities#13707612, openGoodsMovementShelfLifeEndDatetimes#13707613, timeDependentSettingsName#13707027, timeDependentSettingsStartDatetime#13707028, timeDependentSettingsEndDatetime#13707029, timeDependentSettingsValue#13707030, openGoodsMovementOrderDatetimes#13707610, plantOperatingTimes#13707014, schedule#13707618, configuration#13707775, product#13707808, plant#13707809, requestedQuantities#13707787]
(75) Project [codegen id : 18]
Output [3]: [executionID#13707832, array(ProductPlantQuantityInformation#13707831) AS prodPlantQuantityInformation#13707833, array(plantOperatingTimes#13707014) AS plantOperatingTimesArray#13707834]
Input [3]: [plantOperatingTimes#13707014, ProductPlantQuantityInformation#13707831, executionID#13707832]
(76) DeserializeToObject
Input [3]: [executionID#13707832, prodPlantQuantityInformation#13707833, plantOperatingTimesArray#13707834]
Arguments: createexternalrow(static_invoke(java.lang.Integer.valueOf(executionID#13707832)), 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#13707833, 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#13707834, 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#13707841: org.apache.spark.sql.Row
(77) MapPartitions
Input [1]: [obj#13707841]
Arguments: org.apache.spark.sql.internal.ToScalaUDF$$$Lambda/0x0000000801cd2a50@20a8931b, obj#13707845: org.apache.spark.sql.Row
(78) SerializeFromObject [codegen id : 21]
Input [1]: [obj#13707845]
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#13707849, 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#13707850, 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#13707851]
(79) InMemoryTableScan
Output: []
(80) InMemoryRelation
Arguments: [shardId#13707852, worklistShardItemId#13707853L, version#13707854, product#13707855, plant#13707856, periodStart#13707857, periodEnd#13707858, qty#13707859], StorageLevel(disk, memory, 2 replicas)
(81) HashAggregate [codegen id : 19]
Input: []
Keys [1]: [1 AS 1#13708679]
Functions: []
Aggregate Attributes: []
Results [1]: [1#13708679]
(82) Exchange
Input [1]: [1#13708679]
Arguments: hashpartitioning(1#13708679, 30), ENSURE_REQUIREMENTS, [plan_id=13471729]
(83) HashAggregate [codegen id : 20]
Input [1]: [1#13708679]
Keys [1]: [1#13708679]
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#13707785]
(84) BroadcastExchange
Input [1]: [configuration#13707785]
Arguments: IdentityBroadcastMode, [plan_id=13471733]
(85) BroadcastNestedLoopJoin [codegen id : 21]
Join type: Cross
Join condition: None
(86) DeserializeToObject
Input [4]: [executionID#13707849, prodPlantQuantityInformation#13707850, plantOperatingTimesArray#13707851, configuration#13707785]
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#13707785.names, None).array())), (setValues,invoke(mapobjects(lambdavariable(MapObject, StringType, false, -2), invoke(lambdavariable(MapObject, StringType, false, -2).toString()), configuration#13707785.values, None).array())))), (setExecutionID,executionID#13707849), (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#13707851, 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#13707850, None).array()))), obj#13707877: com.sap.s4hana.eureka.business.crporderquantitykpiservice.core.calculation.PartitionableKpiCalculationArgument