== Physical Plan ==
Execute SaveIntoDataSourceCommand (1)
+- SaveIntoDataSourceCommand (2)
+- Project (221)
+- Project (220)
+- Project (219)
+- Project (218)
+- Project (217)
+- Project (216)
+- Project (215)
+- Project (214)
+- Project (213)
+- Project (212)
+- Deduplicate (211)
+- Project (210)
+- Filter (209)
+- Project (208)
+- Join (207)
:- Project (205)
: +- Project (204)
: +- Project (203)
: +- Project (202)
: +- Project (201)
: +- Project (200)
: +- Join (199)
: :- Project (29)
: : +- Project (28)
: : +- Project (27)
: : +- Project (26)
: : +- Generate (25)
: : +- Project (24)
: : +- Generate (23)
: : +- Project (22)
: : +- Join (21)
: : :- Project (18)
: : : +- Project (17)
: : : +- Join (16)
: : : :- SubqueryAlias (12)
: : : : +- Project (11)
: : : : +- Join (10)
: : : : :- Project (5)
: : : : : +- RepartitionByExpression (4)
: : : : : +- LogicalRelation (3)
: : : : +- Project (9)
: : : : +- Project (8)
: : : : +- Repartition (7)
: : : : +- LogicalRelation (6)
: : : +- Project (15)
: : : +- Repartition (14)
: : : +- LogicalRelation (13)
: : +- Repartition (20)
: : +- LogicalRelation (19)
: +- Project (198)
: +- Aggregate (197)
: +- Project (196)
: +- Join (195)
: :- Project (111)
: : +- Filter (110)
: : +- Join (109)
: : :- Filter (81)
: : : +- Project (80)
: : : +- Project (79)
: : : +- Generate (78)
: : : +- Project (77)
: : : +- Aggregate (76)
: : : +- Project (75)
: : : +- Generate (74)
: : : +- Join (73)
: : : :- Repartition (31)
: : : : +- LogicalRelation (30)
: : : +- Project (72)
: : : +- Join (71)
: : : :- Project (41)
: : : : +- Project (40)
: : : : +- Generate (39)
: : : : +- Project (38)
: : : : +- Generate (37)
: : : : +- Project (36)
: : : : +- Project (35)
: : : : +- Filter (34)
: : : : +- Repartition (33)
: : : : +- LogicalRelation (32)
: : : +- Deduplicate (70)
: : : +- Project (69)
: : : +- Project (68)
: : : +- Project (67)
: : : +- Project (66)
: : : +- Project (65)
: : : +- Generate (64)
: : : +- Project (63)
: : : +- Generate (62)
: : : +- Project (61)
: : : +- Join (60)
: : : :- Project (57)
: : : : +- Project (56)
: : : : +- Join (55)
: : : : :- SubqueryAlias (51)
: : : : : +- Project (50)
: : : : : +- Join (49)
: : : : : :- Project (44)
: : : : : : +- RepartitionByExpression (43)
: : : : : : +- LogicalRelation (42)
: : : : : +- Project (48)
: : : : : +- Project (47)
: : : : : +- Repartition (46)
: : : : : +- LogicalRelation (45)
: : : : +- Project (54)
: : : : +- Repartition (53)
: : : : +- LogicalRelation (52)
: : : +- Repartition (59)
: : : +- LogicalRelation (58)
: : +- Project (108)
: : +- Project (107)
: : +- Project (106)
: : +- Project (105)
: : +- Generate (104)
: : +- Project (103)
: : +- Generate (102)
: : +- Project (101)
: : +- Join (100)
: : :- Project (97)
: : : +- Project (96)
: : : +- Join (95)
: : : :- SubqueryAlias (91)
: : : : +- Project (90)
: : : : +- Join (89)
: : : : :- Project (84)
: : : : : +- RepartitionByExpression (83)
: : : : : +- LogicalRelation (82)
: : : : +- Project (88)
: : : : +- Project (87)
: : : : +- Repartition (86)
: : : : +- LogicalRelation (85)
: : : +- Project (94)
: : : +- Repartition (93)
: : : +- LogicalRelation (92)
: : +- Repartition (99)
: : +- LogicalRelation (98)
: +- Aggregate (194)
: +- Project (193)
: +- Filter (192)
: +- Join (191)
: :- Filter (163)
: : +- Project (162)
: : +- Project (161)
: : +- Generate (160)
: : +- Project (159)
: : +- Aggregate (158)
: : +- Project (157)
: : +- Generate (156)
: : +- Join (155)
: : :- Repartition (113)
: : : +- LogicalRelation (112)
: : +- Project (154)
: : +- Join (153)
: : :- Project (123)
: : : +- Project (122)
: : : +- Generate (121)
: : : +- Project (120)
: : : +- Generate (119)
: : : +- Project (118)
: : : +- Project (117)
: : : +- Filter (116)
: : : +- Repartition (115)
: : : +- LogicalRelation (114)
: : +- Deduplicate (152)
: : +- Project (151)
: : +- Project (150)
: : +- Project (149)
: : +- Project (148)
: : +- Project (147)
: : +- Generate (146)
: : +- Project (145)
: : +- Generate (144)
: : +- Project (143)
: : +- Join (142)
: : :- Project (139)
: : : +- Project (138)
: : : +- Join (137)
: : : :- SubqueryAlias (133)
: : : : +- Project (132)
: : : : +- Join (131)
: : : : :- Project (126)
: : : : : +- RepartitionByExpression (125)
: : : : : +- LogicalRelation (124)
: : : : +- Project (130)
: : : : +- Project (129)
: : : : +- Repartition (128)
: : : : +- LogicalRelation (127)
: : : +- Project (136)
: : : +- Repartition (135)
: : : +- LogicalRelation (134)
: : +- Repartition (141)
: : +- LogicalRelation (140)
: +- Project (190)
: +- Project (189)
: +- Project (188)
: +- Project (187)
: +- Generate (186)
: +- Project (185)
: +- Generate (184)
: +- Project (183)
: +- Join (182)
: :- Project (179)
: : +- Project (178)
: : +- Join (177)
: : :- SubqueryAlias (173)
: : : +- Project (172)
: : : +- Join (171)
: : : :- Project (166)
: : : : +- RepartitionByExpression (165)
: : : : +- LogicalRelation (164)
: : : +- Project (170)
: : : +- Project (169)
: : : +- Repartition (168)
: : : +- LogicalRelation (167)
: : +- Project (176)
: : +- Repartition (175)
: : +- LogicalRelation (174)
: +- Repartition (181)
: +- LogicalRelation (180)
+- LogicalRelation (206)
(1) Execute SaveIntoDataSourceCommand
Output: []
(2) SaveIntoDataSourceCommand
Arguments: org.apache.spark.sql.kafka010.KafkaSourceProvider@451fafaa, [kafka.ssl.keystore.type=PEM, kafka.ssl.truststore.certificates=-----BEGIN CERTIFICATE-----
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
/jpDfYNIFFeK2b96ea3PMzQYLg==
-----END CERTIFICATE-----, kafka.bootstrap.servers=52.137.59.6:50094,52.137.59.6:50194,52.137.59.6:50294, kafka.ssl.keystore.key=-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCi8oGm8yTQqwhl
wuI/WoFcqdrSo5RG4Exb5qkGAdxARJ5uYjQuHxSni7Qo+EOCCk/vis0y5ZN9XypT
Mw1MPZyBv/hylDRDv97NUvj9Hlrb+Z+gySf+J2IWxRNgduwwP1brc+AJj8Cu5gGE
3g0goLcUfWUmys3yptR8awSC2tehgx6aLzEsoPJAwqEFbAUtchJtntPXGsHBPEcB
FeqMRdd3pROiNBeF2E2q8q9oINpZHZ82IuL8J+AC9e+uLLmfFtGr/kBL6Vubg72/
syOG1b3y/0hDtVPNjjW3Y3y8d4AXs9ZgZwnrT5TLCAOUAm4Y6pLICfedgZeiVP9F
8w9USfSLAgMBAAECggEATzVmG/MurratLtZUp6pFnvc8VU9KCUgIJlZSTIbD+4O/
pfXb2p2mKynIim/gVQrRP6avx/F8SCHmD6qN6MU8WoAoc/4iB9rxocqXGWfTkAHg
fEa8R5n6XwouuKImfu+TP4JE4jD8X6iUDXPpWrZ1OKMZ9Aj6ot1BBjf5aeiakDpH
adxRdrAebDwsQ4yy1D99xkL1UbcR8FM/dn8XdYCICQfrhP0l7M5xNXhmmAAlbZwN
upLQ4G0Grwj2arqzjpDE2T0z0GNvEQTViIViKbBHUGX85UZUXGHQgxodujS4vGho
g6hk684fu98fe7xCPNKrdXtrlQDPFePGSKhviBkW2QKBgQDWuOw85XuM0kYe8+10
HBiSWjGSkUtwwSTs0NLIcnBaugPGwbqdOzQy6y4Yq5CHS3d2BDOOaytZVAXa6r4N
pvyRyLX1d9m36LlUqZf33iyZgg5qPegYpt4o26R7/Tzjt5A2EXfwgUWXeIOWoC1S
HSOqpgKlNXIT8OeWXQXV1jkviQKBgQDCRZcomU6qyBWncOQ6dWFoRp/5587gkYqb
dAUAOa4JCHGPLku04X5tuCIPf8d3b/Jq9HLfXMx+zstk5QuIMAuIX+KFzmfquykl
4E+tzDtI/ZKeAesoxH894aCUr+zaYOzuZ1C2nNY9IGIYCAxtiLSOBsWuW0fTEJ/a
YTRbFvxKcwKBgQCpGWESZDd0o3SNk9SBCE9hkp5PqxUaa0FFLv+Q1G8fRDcNJCxu
/t0Q7J2U2CguJISj8JMZqdStuLoTuaKK5eMqfEKwWf6gEytBPX5sug+tpPrtOGu8
Xk2/J5rV+o0lWL69lew6/9NqgoI+8U4/yKr6DVsv+HMquSHpDME3skm+4QKBgAMu
QoBOqkQPjJM2PPZcD6E2bs4XpoJ0v5E2ABL13syVD87pUiH/AyPmvOAGFoz1D0ID
CJJxoYN9/USEn4C2UKoF796C956XO+A74PIWgu36ANmHbIM5XF/1/rwQeU9GAPsS
Q/cJcFSF4DVGhHWSpGoi4D+vjOh+wC9CIipPoQfTAoGBALe/puazb5oT20FGEyBm
4HO8Dba35K7ntTE90SrKeYXobQrXd0ZVzXvwR2n73Uoye/xig3tXVSK/SrNtRybi
A+Rnwbfcz6rtLVCf3RNmzODeo7dt4XIUc262Xcu4Z4M9jUWhEtRBK+NQvZ16Bn6g
EQGotGoh6684iVMYxzvUKORD
-----END PRIVATE KEY-----, topic=SituationsTopic, kafka.ssl.truststore.type=PEM, kafka.ssl.keystore.certificate.chain=-----BEGIN CERTIFICATE-----
MIIG+jCCBOKgAwIBAgIRALp+YQWDPjU36fO4+KuOIMIwDQYJKoZIhvcNAQELBQAw
eTELMAkGA1UEBhMCREUxDTALBgNVBAcMBEVVMTAxDzANBgNVBAoMBlNBUCBTRTEj
MCEGA1UECwwaU0FQIENsb3VkIFBsYXRmb3JtIENsaWVudHMxJTAjBgNVBAMMHFNB
UCBDbG91ZCBQbGF0Zm9ybSBDbGllbnQgQ0EwHhcNMjYwNjE4MDcxNTQ0WhcNMjcw
NjE4MDgxNTQ0WjCCAfExCzAJBgNVBAYTAkRFMQ8wDQYDVQQKDAZTQVAgU0UxIzAh
BgNVBAsMGlNBUCBDbG91ZCBQbGF0Zm9ybSBDbGllbnRzMRowGAYDVQQLDBFjZi1l
dTIwLXNhcC1rYWZrYTGCAWMwggFfBgNVBAcMggFWUW1QN21yaGM1bW5sZnVqVTUw
THpubkNTQmIyNC1xb01WOXVnQl9sTEJOUENlaHo4X0FLSHdlYzBuRnAtbDB2TGJE
S1RuMjQzVHYyWVlhc1p4VDhVYmRkVkpqTWNlazN0cFZzTmdWU2czRHhDRHQ4aWpL
YkRUTDdnNjdMdm55NnZjc2w5TU9CYjF5U2daRmp2NVVhcVFVQWxTVU42dXNKaFl6
aXl6Mkg1Y2FPZ1FMY1RsMTFMeVBnbVM4UE1jaGItdEZzcnZVQmxkam9DdFQwZHpN
N1dkREJVaFpqRm52d1V3ekhvYlhqYnlGQ1ZiYjlDSWliaWdwek1XNjRlSHJoNDZZ
ODRzakFhTFBHQ1JSdnRmb3ZaYkZiUUktT0NjWWF3SkZlcDdVcTRjMDNhMG1nLUdr
N2RPMGV1NEhjbW1ncEM2c3Z2SVZVQ082UzJuWlhtVXhVV1d3MSkwJwYDVQQDDCBz
YnNzXzlyMmFrZ2VhbXVrZnp3MWV3em1kYnRkZ3plazCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAKLygabzJNCrCGXC4j9agVyp2tKjlEbgTFvmqQYB3EBE
nm5iNC4fFKeLtCj4Q4IKT++KzTLlk31fKlMzDUw9nIG/+HKUNEO/3s1S+P0eWtv5
n6DJJ/4nYhbFE2B27DA/Vutz4AmPwK7mAYTeDSCgtxR9ZSbKzfKm1HxrBILa16GD
HpovMSyg8kDCoQVsBS1yEm2e09cawcE8RwEV6oxF13elE6I0F4XYTaryr2gg2lkd
nzYi4vwn4AL1764suZ8W0av+QEvpW5uDvb+zI4bVvfL/SEO1U82ONbdjfLx3gBez
1mBnCetPlMsIA5QCbhjqksgJ952Bl6JU/0XzD1RJ9IsCAwEAAaOCAQEwgf4wCQYD
VR0TBAIwADAfBgNVHSMEGDAWgBTtx8AzXhKk93kym3vuCviohXiMLzAdBgNVHQ4E
FgQUsR83TgHGVsLA1G4idLLPBIM7O9EwDgYDVR0PAQH/BAQDAgWgMBMGA1UdJQQM
MAoGCCsGAQUFBwMCMIGLBgNVHR8EgYMwgYAwfqB8oHqGeGh0dHA6Ly9zYXAtY2xv
dWQtcGxhdGZvcm0tY2xpZW50LWNhLWV1MTAtY3Jscy5zMy5ldS1jZW50cmFsLTEu
YW1hem9uYXdzLmNvbS9jcmwvMmExYjQ5YWMtZmMwMi00YTQ4LTk5M2EtOWE0ZDBk
ZmVjMzNlLmNybDANBgkqhkiG9w0BAQsFAAOCAgEAe/RSvettwbRgy73EU61mRpoH
LlebOTpS54/3Bd5lBecS4NyeFnMaKxV5dmNaQ65W7cEGcZ523Hg9WkWV+R/LiTff
QkmXCMClsHhjx3VxZe/8W/2nz3Vy4muGU9pL29WGcDE3QzppxQ+0BZLqI672yW/2
R5EzepjLQiB0re4cyWfUm3erjQtveZnGizxi5pyPmcm6RpMe70Cx5SswidEaqljl
K0Z4/UVd4NgaScUJm+I78i/Xgo15fd3Ju4l4pk6cC3n22M9JbcU0i4uDwfksa9iN
mo8OUhEEkNLISo1gH+LxqL2d/a8/J/lDH4GbjoZnQK9vK+75MSYPO5IyDTbMP2ew
gQMnJSHKj76dEFBE8drl/6Xf6mucjMf00+q5FBHwGUsB3ZP+HUZ3oLzL8lIBbLZV
C5WacMRRV8SVp1N+lq32V21a9jXqSJP+Es3kS3iIKJOKWuRLroL7Ln+Xnlq5MlRi
2NW895Zhoj5kIDNG7nKlw1pu3I7hiPyEzIh52DsOUdvKPqUMljcuuA9+SlvxWTfc
Catr6/rV9FgXEBVuPULs/wizaVLT7668Szzo7+y2RAMr1g4URO5IBUsVWYFNrPhE
l+VLtcBI82wdp9LGi1P9AEoMk6e6p66Una2CEKtNyjTiCWYOG1gyeLaq6vSW1sJC
GL645CBGfMJODZmU9pM=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
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
TG767A==
-----END CERTIFICATE-----, kafka.security.protocol=SSL], ErrorIfExists
(3) LogicalRelation
Arguments: parquet, [product#25911, plant#25912, orderDateTime#25913, planningStartDateTime#25914], false
(4) RepartitionByExpression
Arguments: [product#25911, plant#25912], 10
(5) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913]
(6) LogicalRelation
Arguments: parquet, [systemId#25916, internalUUID#25917, plant#25918, product#25919, blockedForReplenishmentStartingFrom#25920, productionAspect#25921, salesPlant#25922, listing#25923], false
(7) Repartition
Arguments: 10, true
(8) Project
Arguments: [systemId#25916, internalUUID#25917, plant#25918, product#25919, blockedForReplenishmentStartingFrom#25920, productionAspect#25921, salesPlant#25922, listing#25923, struct(systemId, systemId#25916, internalUUID, internalUUID#25917, plant, plant#25918, product, product#25919, blockedForReplenishmentStartingFrom, blockedForReplenishmentStartingFrom#25920, productionAspect, productionAspect#25921, salesPlant, salesPlant#25922, listing, listing#25923) AS productPlant#25925]
(9) Project
Arguments: [productPlant#25925]
(10) Join
Arguments: LeftOuter, ((product#25911 <=> productPlant#25925.product.internalRefUUID) AND (plant#25912 <=> productPlant#25925.plant.internalRefUUID))
(11) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925]
(12) SubqueryAlias
Arguments: wl
(13) LogicalRelation
Arguments: parquet, [systemId#25928, internalUUID#25929, id#25930, displayId#25931, name#25932, category#25933, companyCode#25934, address#25935, mainDistributionChain#25936, mainPurchasingOrganization#25937, validPurchasingOrganizations#25938, productGroup#25939], false
(14) Repartition
Arguments: 10, true
(15) Project
Arguments: [internalUUID#25929, address#25935.timeZone.code AS timezonecode#25940]
(16) Join
Arguments: LeftOuter, (plant#25912 <=> internalUUID#25929)
(17) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, internalUUID#25929, CASE WHEN isnotnull(timezonecode#25940) THEN timezonecode#25940 ELSE UTC END AS timezonecode#25943]
(18) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943]
(19) LogicalRelation
Arguments: parquet, [systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955], false
(20) Repartition
Arguments: 10, true
(21) Join
Arguments: LeftOuter, (product#25911 = internalUUID#25945)
(22) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955, filter(unitOfMeasureConversions#25951, lambdafunction((((lambda u#25958.measurementUnit1.code = productPlant#25925.productionAspect.productMovementPlants.unitOfIssue.code) AND (lambda u#25958.measurementUnit1.internalRefUUID = productPlant#25925.productionAspect.productMovementPlants.unitOfIssue.internalRefUUID)) AND ((lambda u#25958.measurementUnit2.code = baseUnitOfMeasure#25949.code) AND (lambda u#25958.measurementUnit2.internalRefUUID = baseUnitOfMeasure#25949.internalRefUUID))), lambda u#25958, false)) AS filteredUnitOfMeasureConversions#25957]
(23) Generate
Arguments: explode(filteredUnitOfMeasureConversions#25957.quantityNumerator), true, [quantityNumerator#25965]
(24) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955, filteredUnitOfMeasureConversions#25957, quantityNumerator#25965]
(25) Generate
Arguments: explode(filteredUnitOfMeasureConversions#25957.quantityDenominator), true, [quantityDenominator#25968]
(26) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955, filteredUnitOfMeasureConversions#25957, quantityNumerator#25965, quantityDenominator#25968]
(27) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955, filteredUnitOfMeasureConversions#25957, quantityNumerator#25965, quantityDenominator#25968, (cast(quantityNumerator#25965 as double) / cast(quantityDenominator#25968 as double)) AS outboundUnit#25969]
(28) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, systemId#25944, internalUUID#25945, id#25946, displayId#25947, name#25948, baseUnitOfMeasure#25949, unitOfMeasures#25950, unitOfMeasureConversions#25951, productionAspect#25952, salesAspect#25953, procurementAspect#25954, productGroup#25955, filteredUnitOfMeasureConversions#25957, quantityNumerator#25965, quantityDenominator#25968, CASE WHEN (isnull(outboundUnit#25969) OR (outboundUnit#25969 <= cast(0 as double))) THEN 1.0 ELSE outboundUnit#25969 END AS outboundUnit#25970]
(29) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970]
(30) LogicalRelation
Arguments: parquet, [systemId#26007, internalUUID#26008, product#26009, plant#26010, calculationDateTime#26011, stockQuantities#26012], false
(31) Repartition
Arguments: 10, true
(32) LogicalRelation
Arguments: parquet, [marketUnit#25971, description#25972, articleHierarchy#25973, defaultCurrency#25974, responsibilities#25975, replenishmentTypes#25976, distributionCenters#25977, assignedArticleHierarchyNodes#25978, minOrderQtySetting#25979, minOrderQtySettingInternal#25980, listingCheck#25981, odsSelection#25982, demandProfiles#25983, constraintProfiles#25984, optimizationProfiles#25985, orderGroupSplitProfiles#25986, supplierMinimumProfiles#25987, multipleRestrictionProfiles#25988, preferredUomSource#25989, handlingOfUnfulfilledDemands#25990, negligibleQuantitiesThreshold#25991, eventtype#25992], false
(33) Repartition
Arguments: 10, true
(34) Filter
Arguments: (marketUnit#25971 <=> DIP_1691)
(35) Project
Arguments: [marketUnit#25971, description#25972, articleHierarchy#25973, defaultCurrency#25974, responsibilities#25975, replenishmentTypes#25976, distributionCenters#25977, assignedArticleHierarchyNodes#25978, minOrderQtySetting#25979, minOrderQtySettingInternal#25980, listingCheck#25981, odsSelection#25982, demandProfiles#25983, constraintProfiles#25984, optimizationProfiles#25985, orderGroupSplitProfiles#25986, supplierMinimumProfiles#25987, multipleRestrictionProfiles#25988, preferredUomSource#25989, handlingOfUnfulfilledDemands#25990, negligibleQuantitiesThreshold#25991, eventtype#25992]
(36) Project
Arguments: [distributionCenters#25977]
(37) Generate
Arguments: explode(distributionCenters#25977), false, [distributionCenters#25995]
(38) Project
Arguments: [distributionCenters#25995]
(39) Generate
Arguments: explode(distributionCenters#25995.storageLocations), false, [storageLocations#26002]
(40) Project
Arguments: [distributionCenters#25995.id AS plantId#25996, distributionCenters#25995.internalRefUUID AS plantUuid#25997, storageLocations#26002]
(41) Project
Arguments: [plantId#25996, plantUuid#25997, storageLocations#26002.id AS storageLocId#26003, storageLocations#26002.internalRefUUID AS storageLocUuid#26004]
(42) LogicalRelation
Arguments: parquet, [product#26267, plant#26268, orderDateTime#26269, planningStartDateTime#26270], false
(43) RepartitionByExpression
Arguments: [product#26267, plant#26268], 10
(44) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269]
(45) LogicalRelation
Arguments: parquet, [systemId#26271, internalUUID#26272, plant#26273, product#26274, blockedForReplenishmentStartingFrom#26275, productionAspect#26276, salesPlant#26277, listing#26278], false
(46) Repartition
Arguments: 10, true
(47) Project
Arguments: [systemId#26271, internalUUID#26272, plant#26273, product#26274, blockedForReplenishmentStartingFrom#26275, productionAspect#26276, salesPlant#26277, listing#26278, struct(systemId, systemId#26271, internalUUID, internalUUID#26272, plant, plant#26273, product, product#26274, blockedForReplenishmentStartingFrom, blockedForReplenishmentStartingFrom#26275, productionAspect, productionAspect#26276, salesPlant, salesPlant#26277, listing, listing#26278) AS productPlant#26279]
(48) Project
Arguments: [productPlant#26279]
(49) Join
Arguments: LeftOuter, ((product#26267 <=> productPlant#26279.product.internalRefUUID) AND (plant#26268 <=> productPlant#26279.plant.internalRefUUID))
(50) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279]
(51) SubqueryAlias
Arguments: wl
(52) LogicalRelation
Arguments: parquet, [systemId#26280, internalUUID#26281, id#26282, displayId#26283, name#26284, category#26285, companyCode#26286, address#26287, mainDistributionChain#26288, mainPurchasingOrganization#26289, validPurchasingOrganizations#26290, productGroup#26291], false
(53) Repartition
Arguments: 10, true
(54) Project
Arguments: [internalUUID#26281, address#26287.timeZone.code AS timezonecode#26292]
(55) Join
Arguments: LeftOuter, (plant#26268 <=> internalUUID#26281)
(56) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, internalUUID#26281, CASE WHEN isnotnull(timezonecode#26292) THEN timezonecode#26292 ELSE UTC END AS timezonecode#26293]
(57) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293]
(58) LogicalRelation
Arguments: parquet, [systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305], false
(59) Repartition
Arguments: 10, true
(60) Join
Arguments: LeftOuter, (product#26267 = internalUUID#26295)
(61) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305, filter(unitOfMeasureConversions#26301, lambdafunction((((lambda u#25958.measurementUnit1.code = productPlant#26279.productionAspect.productMovementPlants.unitOfIssue.code) AND (lambda u#25958.measurementUnit1.internalRefUUID = productPlant#26279.productionAspect.productMovementPlants.unitOfIssue.internalRefUUID)) AND ((lambda u#25958.measurementUnit2.code = baseUnitOfMeasure#26299.code) AND (lambda u#25958.measurementUnit2.internalRefUUID = baseUnitOfMeasure#26299.internalRefUUID))), lambda u#25958, false)) AS filteredUnitOfMeasureConversions#26306]
(62) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26306.quantityNumerator), true, [quantityNumerator#26307]
(63) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305, filteredUnitOfMeasureConversions#26306, quantityNumerator#26307]
(64) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26306.quantityDenominator), true, [quantityDenominator#26308]
(65) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305, filteredUnitOfMeasureConversions#26306, quantityNumerator#26307, quantityDenominator#26308]
(66) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305, filteredUnitOfMeasureConversions#26306, quantityNumerator#26307, quantityDenominator#26308, (cast(quantityNumerator#26307 as double) / cast(quantityDenominator#26308 as double)) AS outboundUnit#26309]
(67) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, systemId#26294, internalUUID#26295, id#26296, displayId#26297, name#26298, baseUnitOfMeasure#26299, unitOfMeasures#26300, unitOfMeasureConversions#26301, productionAspect#26302, salesAspect#26303, procurementAspect#26304, productGroup#26305, filteredUnitOfMeasureConversions#26306, quantityNumerator#26307, quantityDenominator#26308, CASE WHEN (isnull(outboundUnit#26309) OR (outboundUnit#26309 <= cast(0 as double))) THEN 1.0 ELSE outboundUnit#26309 END AS outboundUnit#26310]
(68) Project
Arguments: [product#26267, plant#26268, orderDateTime#26269, productPlant#26279, timezonecode#26293, outboundUnit#26310]
(69) Project
Arguments: [plant#26268]
(70) Deduplicate
Arguments: [plant#26268]
(71) Join
Arguments: Inner, (plantUuid#25997 = plant#26268)
(72) Project
Arguments: [plantId#25996, plantUuid#25997, storageLocId#26003, storageLocUuid#26004]
(73) Join
Arguments: Inner, (plant#26010.internalRefUUID <=> plantUuid#25997)
(74) Generate
Arguments: explode(filter(stockQuantities#26012, lambdafunction(((lambda x#26016.storageLocation.internalRefUuid = storageLocUuid#26004) AND (lambda x#26016.storageLocation.Id = storageLocId#26003)), lambda x#26016, false))), false, [stockQuantity#26017]
(75) Project
Arguments: [systemId#26007, internalUUID#26008, product#26009, plant#26010, calculationDateTime#26011, stockQuantities#26012, plantId#25996, plantUuid#25997, storageLocId#26003, storageLocUuid#26004, stockQuantity#26017]
(76) Aggregate
Arguments: [plantUuid#25997, internalUUID#26008, plant#26010, product#26009, systemId#26007], [plantUuid#25997, internalUUID#26008, plant#26010, product#26009, systemId#26007, first(calculationDateTime#26011, false) AS calculationDateTime#26018, collect_list(stockQuantity#26017, 0, 0) AS stockQuantities#26019]
(77) Project
Arguments: [systemId#26007, internalUUID#26008, product#26009, plant#26010, calculationDateTime#26018, stockQuantities#26019]
(78) Generate
Arguments: explode(stockQuantities#26019), false, [stockQuantity#26034]
(79) Project
Arguments: [systemId#26007, internalUUID#26008, product#26009, plant#26010, calculationDateTime#26018, stockQuantities#26019, stockQuantity#26034]
(80) Project
Arguments: [plant#26010.id AS plant#26035, plant#26010.internalRefUUID AS plantUuid#26036, product#26009.id AS product#26037, product#26009.internalRefUUID AS productUuid#26038, calculationDateTime#26018, stockQuantity#26034.storagelocation.id AS storageLocId#26039, stockQuantity#26034.storagelocation.internalRefUUID AS storageLocUuid#26040, stockQuantity#26034.quantity.measure AS quantity#26041, stockQuantity#26034.specialStockIndicator.code AS specialStockIndicator#26042, stockQuantity#26034.stockType.code AS stockType#26043]
(81) Filter
Arguments: ((specialStockIndicator#26042 = ) AND (stockType#26043 = 01))
(82) LogicalRelation
Arguments: parquet, [product#26053, plant#26054, orderDateTime#26055, planningStartDateTime#26056], false
(83) RepartitionByExpression
Arguments: [product#26053, plant#26054], 10
(84) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055]
(85) LogicalRelation
Arguments: parquet, [systemId#26057, internalUUID#26058, plant#26059, product#26060, blockedForReplenishmentStartingFrom#26061, productionAspect#26062, salesPlant#26063, listing#26064], false
(86) Repartition
Arguments: 10, true
(87) Project
Arguments: [systemId#26057, internalUUID#26058, plant#26059, product#26060, blockedForReplenishmentStartingFrom#26061, productionAspect#26062, salesPlant#26063, listing#26064, struct(systemId, systemId#26057, internalUUID, internalUUID#26058, plant, plant#26059, product, product#26060, blockedForReplenishmentStartingFrom, blockedForReplenishmentStartingFrom#26061, productionAspect, productionAspect#26062, salesPlant, salesPlant#26063, listing, listing#26064) AS productPlant#26065]
(88) Project
Arguments: [productPlant#26065]
(89) Join
Arguments: LeftOuter, ((product#26053 <=> productPlant#26065.product.internalRefUUID) AND (plant#26054 <=> productPlant#26065.plant.internalRefUUID))
(90) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065]
(91) SubqueryAlias
Arguments: wl
(92) LogicalRelation
Arguments: parquet, [systemId#26066, internalUUID#26067, id#26068, displayId#26069, name#26070, category#26071, companyCode#26072, address#26073, mainDistributionChain#26074, mainPurchasingOrganization#26075, validPurchasingOrganizations#26076, productGroup#26077], false
(93) Repartition
Arguments: 10, true
(94) Project
Arguments: [internalUUID#26067, address#26073.timeZone.code AS timezonecode#26078]
(95) Join
Arguments: LeftOuter, (plant#26054 <=> internalUUID#26067)
(96) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, internalUUID#26067, CASE WHEN isnotnull(timezonecode#26078) THEN timezonecode#26078 ELSE UTC END AS timezonecode#26079]
(97) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079]
(98) LogicalRelation
Arguments: parquet, [systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091], false
(99) Repartition
Arguments: 10, true
(100) Join
Arguments: LeftOuter, (product#26053 = internalUUID#26081)
(101) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091, filter(unitOfMeasureConversions#26087, lambdafunction((((lambda u#25958.measurementUnit1.code = productPlant#26065.productionAspect.productMovementPlants.unitOfIssue.code) AND (lambda u#25958.measurementUnit1.internalRefUUID = productPlant#26065.productionAspect.productMovementPlants.unitOfIssue.internalRefUUID)) AND ((lambda u#25958.measurementUnit2.code = baseUnitOfMeasure#26085.code) AND (lambda u#25958.measurementUnit2.internalRefUUID = baseUnitOfMeasure#26085.internalRefUUID))), lambda u#25958, false)) AS filteredUnitOfMeasureConversions#26092]
(102) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26092.quantityNumerator), true, [quantityNumerator#26093]
(103) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091, filteredUnitOfMeasureConversions#26092, quantityNumerator#26093]
(104) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26092.quantityDenominator), true, [quantityDenominator#26094]
(105) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091, filteredUnitOfMeasureConversions#26092, quantityNumerator#26093, quantityDenominator#26094]
(106) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091, filteredUnitOfMeasureConversions#26092, quantityNumerator#26093, quantityDenominator#26094, (cast(quantityNumerator#26093 as double) / cast(quantityDenominator#26094 as double)) AS outboundUnit#26095]
(107) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, systemId#26080, internalUUID#26081, id#26082, displayId#26083, name#26084, baseUnitOfMeasure#26085, unitOfMeasures#26086, unitOfMeasureConversions#26087, productionAspect#26088, salesAspect#26089, procurementAspect#26090, productGroup#26091, filteredUnitOfMeasureConversions#26092, quantityNumerator#26093, quantityDenominator#26094, CASE WHEN (isnull(outboundUnit#26095) OR (outboundUnit#26095 <= cast(0 as double))) THEN 1.0 ELSE outboundUnit#26095 END AS outboundUnit#26096]
(108) Project
Arguments: [product#26053, plant#26054, orderDateTime#26055, productPlant#26065, timezonecode#26079, outboundUnit#26096]
(109) Join
Arguments: Inner, ((plantUuid#26036 = plant#26054) AND (productUuid#26038 = product#26053))
(110) Filter
Arguments: (calculationDateTime#26018 <= orderDateTime#26055)
(111) Project
Arguments: [plantUuid#26036 AS plant#26101, productUuid#26038 AS product#26102, storageLocId#26039, calculationDateTime#26018, quantity#26041]
(112) LogicalRelation
Arguments: parquet, [systemId#26110, internalUUID#26111, product#26112, plant#26113, calculationDateTime#26114, stockQuantities#26115], false
(113) Repartition
Arguments: 10, true
(114) LogicalRelation
Arguments: parquet, [marketUnit#26116, description#26117, articleHierarchy#26118, defaultCurrency#26119, responsibilities#26120, replenishmentTypes#26121, distributionCenters#26122, assignedArticleHierarchyNodes#26123, minOrderQtySetting#26124, minOrderQtySettingInternal#26125, listingCheck#26126, odsSelection#26127, demandProfiles#26128, constraintProfiles#26129, optimizationProfiles#26130, orderGroupSplitProfiles#26131, supplierMinimumProfiles#26132, multipleRestrictionProfiles#26133, preferredUomSource#26134, handlingOfUnfulfilledDemands#26135, negligibleQuantitiesThreshold#26136, eventtype#26137], false
(115) Repartition
Arguments: 10, true
(116) Filter
Arguments: (marketUnit#26116 <=> DIP_1691)
(117) Project
Arguments: [marketUnit#26116, description#26117, articleHierarchy#26118, defaultCurrency#26119, responsibilities#26120, replenishmentTypes#26121, distributionCenters#26122, assignedArticleHierarchyNodes#26123, minOrderQtySetting#26124, minOrderQtySettingInternal#26125, listingCheck#26126, odsSelection#26127, demandProfiles#26128, constraintProfiles#26129, optimizationProfiles#26130, orderGroupSplitProfiles#26131, supplierMinimumProfiles#26132, multipleRestrictionProfiles#26133, preferredUomSource#26134, handlingOfUnfulfilledDemands#26135, negligibleQuantitiesThreshold#26136, eventtype#26137]
(118) Project
Arguments: [distributionCenters#26122]
(119) Generate
Arguments: explode(distributionCenters#26122), false, [distributionCenters#26138]
(120) Project
Arguments: [distributionCenters#26138]
(121) Generate
Arguments: explode(distributionCenters#26138.storageLocations), false, [storageLocations#26139]
(122) Project
Arguments: [distributionCenters#26138.id AS plantId#26140, distributionCenters#26138.internalRefUUID AS plantUuid#26141, storageLocations#26139]
(123) Project
Arguments: [plantId#26140, plantUuid#26141, storageLocations#26139.id AS storageLocId#26142, storageLocations#26139.internalRefUUID AS storageLocUuid#26143]
(124) LogicalRelation
Arguments: parquet, [product#26144, plant#26145, orderDateTime#26146, planningStartDateTime#26147], false
(125) RepartitionByExpression
Arguments: [product#26144, plant#26145], 10
(126) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146]
(127) LogicalRelation
Arguments: parquet, [systemId#26148, internalUUID#26149, plant#26150, product#26151, blockedForReplenishmentStartingFrom#26152, productionAspect#26153, salesPlant#26154, listing#26155], false
(128) Repartition
Arguments: 10, true
(129) Project
Arguments: [systemId#26148, internalUUID#26149, plant#26150, product#26151, blockedForReplenishmentStartingFrom#26152, productionAspect#26153, salesPlant#26154, listing#26155, struct(systemId, systemId#26148, internalUUID, internalUUID#26149, plant, plant#26150, product, product#26151, blockedForReplenishmentStartingFrom, blockedForReplenishmentStartingFrom#26152, productionAspect, productionAspect#26153, salesPlant, salesPlant#26154, listing, listing#26155) AS productPlant#26156]
(130) Project
Arguments: [productPlant#26156]
(131) Join
Arguments: LeftOuter, ((product#26144 <=> productPlant#26156.product.internalRefUUID) AND (plant#26145 <=> productPlant#26156.plant.internalRefUUID))
(132) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156]
(133) SubqueryAlias
Arguments: wl
(134) LogicalRelation
Arguments: parquet, [systemId#26157, internalUUID#26158, id#26159, displayId#26160, name#26161, category#26162, companyCode#26163, address#26164, mainDistributionChain#26165, mainPurchasingOrganization#26166, validPurchasingOrganizations#26167, productGroup#26168], false
(135) Repartition
Arguments: 10, true
(136) Project
Arguments: [internalUUID#26158, address#26164.timeZone.code AS timezonecode#26169]
(137) Join
Arguments: LeftOuter, (plant#26145 <=> internalUUID#26158)
(138) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, internalUUID#26158, CASE WHEN isnotnull(timezonecode#26169) THEN timezonecode#26169 ELSE UTC END AS timezonecode#26170]
(139) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170]
(140) LogicalRelation
Arguments: parquet, [systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182], false
(141) Repartition
Arguments: 10, true
(142) Join
Arguments: LeftOuter, (product#26144 = internalUUID#26172)
(143) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182, filter(unitOfMeasureConversions#26178, lambdafunction((((lambda u#25958.measurementUnit1.code = productPlant#26156.productionAspect.productMovementPlants.unitOfIssue.code) AND (lambda u#25958.measurementUnit1.internalRefUUID = productPlant#26156.productionAspect.productMovementPlants.unitOfIssue.internalRefUUID)) AND ((lambda u#25958.measurementUnit2.code = baseUnitOfMeasure#26176.code) AND (lambda u#25958.measurementUnit2.internalRefUUID = baseUnitOfMeasure#26176.internalRefUUID))), lambda u#25958, false)) AS filteredUnitOfMeasureConversions#26183]
(144) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26183.quantityNumerator), true, [quantityNumerator#26184]
(145) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182, filteredUnitOfMeasureConversions#26183, quantityNumerator#26184]
(146) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26183.quantityDenominator), true, [quantityDenominator#26185]
(147) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182, filteredUnitOfMeasureConversions#26183, quantityNumerator#26184, quantityDenominator#26185]
(148) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182, filteredUnitOfMeasureConversions#26183, quantityNumerator#26184, quantityDenominator#26185, (cast(quantityNumerator#26184 as double) / cast(quantityDenominator#26185 as double)) AS outboundUnit#26186]
(149) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, systemId#26171, internalUUID#26172, id#26173, displayId#26174, name#26175, baseUnitOfMeasure#26176, unitOfMeasures#26177, unitOfMeasureConversions#26178, productionAspect#26179, salesAspect#26180, procurementAspect#26181, productGroup#26182, filteredUnitOfMeasureConversions#26183, quantityNumerator#26184, quantityDenominator#26185, CASE WHEN (isnull(outboundUnit#26186) OR (outboundUnit#26186 <= cast(0 as double))) THEN 1.0 ELSE outboundUnit#26186 END AS outboundUnit#26187]
(150) Project
Arguments: [product#26144, plant#26145, orderDateTime#26146, productPlant#26156, timezonecode#26170, outboundUnit#26187]
(151) Project
Arguments: [plant#26145]
(152) Deduplicate
Arguments: [plant#26145]
(153) Join
Arguments: Inner, (plantUuid#26141 = plant#26145)
(154) Project
Arguments: [plantId#26140, plantUuid#26141, storageLocId#26142, storageLocUuid#26143]
(155) Join
Arguments: Inner, (plant#26113.internalRefUUID <=> plantUuid#26141)
(156) Generate
Arguments: explode(filter(stockQuantities#26115, lambdafunction(((lambda x#26016.storageLocation.internalRefUuid = storageLocUuid#26143) AND (lambda x#26016.storageLocation.Id = storageLocId#26142)), lambda x#26016, false))), false, [stockQuantity#26188]
(157) Project
Arguments: [systemId#26110, internalUUID#26111, product#26112, plant#26113, calculationDateTime#26114, stockQuantities#26115, plantId#26140, plantUuid#26141, storageLocId#26142, storageLocUuid#26143, stockQuantity#26188]
(158) Aggregate
Arguments: [plantUuid#26141, internalUUID#26111, plant#26113, product#26112, systemId#26110], [plantUuid#26141, internalUUID#26111, plant#26113, product#26112, systemId#26110, first(calculationDateTime#26114, false) AS calculationDateTime#26189, collect_list(stockQuantity#26188, 0, 0) AS stockQuantities#26190]
(159) Project
Arguments: [systemId#26110, internalUUID#26111, product#26112, plant#26113, calculationDateTime#26189, stockQuantities#26190]
(160) Generate
Arguments: explode(stockQuantities#26190), false, [stockQuantity#26191]
(161) Project
Arguments: [systemId#26110, internalUUID#26111, product#26112, plant#26113, calculationDateTime#26189, stockQuantities#26190, stockQuantity#26191]
(162) Project
Arguments: [plant#26113.id AS plant#26192, plant#26113.internalRefUUID AS plantUuid#26193, product#26112.id AS product#26194, product#26112.internalRefUUID AS productUuid#26195, calculationDateTime#26189, stockQuantity#26191.storagelocation.id AS storageLocId#26196, stockQuantity#26191.storagelocation.internalRefUUID AS storageLocUuid#26197, stockQuantity#26191.quantity.measure AS quantity#26198, stockQuantity#26191.specialStockIndicator.code AS specialStockIndicator#26199, stockQuantity#26191.stockType.code AS stockType#26200]
(163) Filter
Arguments: ((specialStockIndicator#26199 = ) AND (stockType#26200 = 01))
(164) LogicalRelation
Arguments: parquet, [product#26201, plant#26202, orderDateTime#26203, planningStartDateTime#26204], false
(165) RepartitionByExpression
Arguments: [product#26201, plant#26202], 10
(166) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203]
(167) LogicalRelation
Arguments: parquet, [systemId#26205, internalUUID#26206, plant#26207, product#26208, blockedForReplenishmentStartingFrom#26209, productionAspect#26210, salesPlant#26211, listing#26212], false
(168) Repartition
Arguments: 10, true
(169) Project
Arguments: [systemId#26205, internalUUID#26206, plant#26207, product#26208, blockedForReplenishmentStartingFrom#26209, productionAspect#26210, salesPlant#26211, listing#26212, struct(systemId, systemId#26205, internalUUID, internalUUID#26206, plant, plant#26207, product, product#26208, blockedForReplenishmentStartingFrom, blockedForReplenishmentStartingFrom#26209, productionAspect, productionAspect#26210, salesPlant, salesPlant#26211, listing, listing#26212) AS productPlant#26213]
(170) Project
Arguments: [productPlant#26213]
(171) Join
Arguments: LeftOuter, ((product#26201 <=> productPlant#26213.product.internalRefUUID) AND (plant#26202 <=> productPlant#26213.plant.internalRefUUID))
(172) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213]
(173) SubqueryAlias
Arguments: wl
(174) LogicalRelation
Arguments: parquet, [systemId#26214, internalUUID#26215, id#26216, displayId#26217, name#26218, category#26219, companyCode#26220, address#26221, mainDistributionChain#26222, mainPurchasingOrganization#26223, validPurchasingOrganizations#26224, productGroup#26225], false
(175) Repartition
Arguments: 10, true
(176) Project
Arguments: [internalUUID#26215, address#26221.timeZone.code AS timezonecode#26226]
(177) Join
Arguments: LeftOuter, (plant#26202 <=> internalUUID#26215)
(178) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, internalUUID#26215, CASE WHEN isnotnull(timezonecode#26226) THEN timezonecode#26226 ELSE UTC END AS timezonecode#26227]
(179) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227]
(180) LogicalRelation
Arguments: parquet, [systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239], false
(181) Repartition
Arguments: 10, true
(182) Join
Arguments: LeftOuter, (product#26201 = internalUUID#26229)
(183) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239, filter(unitOfMeasureConversions#26235, lambdafunction((((lambda u#25958.measurementUnit1.code = productPlant#26213.productionAspect.productMovementPlants.unitOfIssue.code) AND (lambda u#25958.measurementUnit1.internalRefUUID = productPlant#26213.productionAspect.productMovementPlants.unitOfIssue.internalRefUUID)) AND ((lambda u#25958.measurementUnit2.code = baseUnitOfMeasure#26233.code) AND (lambda u#25958.measurementUnit2.internalRefUUID = baseUnitOfMeasure#26233.internalRefUUID))), lambda u#25958, false)) AS filteredUnitOfMeasureConversions#26240]
(184) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26240.quantityNumerator), true, [quantityNumerator#26241]
(185) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239, filteredUnitOfMeasureConversions#26240, quantityNumerator#26241]
(186) Generate
Arguments: explode(filteredUnitOfMeasureConversions#26240.quantityDenominator), true, [quantityDenominator#26242]
(187) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239, filteredUnitOfMeasureConversions#26240, quantityNumerator#26241, quantityDenominator#26242]
(188) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239, filteredUnitOfMeasureConversions#26240, quantityNumerator#26241, quantityDenominator#26242, (cast(quantityNumerator#26241 as double) / cast(quantityDenominator#26242 as double)) AS outboundUnit#26243]
(189) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, systemId#26228, internalUUID#26229, id#26230, displayId#26231, name#26232, baseUnitOfMeasure#26233, unitOfMeasures#26234, unitOfMeasureConversions#26235, productionAspect#26236, salesAspect#26237, procurementAspect#26238, productGroup#26239, filteredUnitOfMeasureConversions#26240, quantityNumerator#26241, quantityDenominator#26242, CASE WHEN (isnull(outboundUnit#26243) OR (outboundUnit#26243 <= cast(0 as double))) THEN 1.0 ELSE outboundUnit#26243 END AS outboundUnit#26244]
(190) Project
Arguments: [product#26201, plant#26202, orderDateTime#26203, productPlant#26213, timezonecode#26227, outboundUnit#26244]
(191) Join
Arguments: Inner, ((plantUuid#26193 = plant#26202) AND (productUuid#26195 = product#26201))
(192) Filter
Arguments: (calculationDateTime#26189 <= orderDateTime#26203)
(193) Project
Arguments: [plantUuid#26193 AS plant#26245, productUuid#26195 AS product#26246, storageLocId#26196, calculationDateTime#26189, quantity#26198]
(194) Aggregate
Arguments: [plant#26245, product#26246, storageLocId#26196], [plant#26245, product#26246, storageLocId#26196, max(calculationDateTime#26189) AS max_calc_datetime#26103]
(195) Join
Arguments: Inner, ((((plant#26101 <=> plant#26245) AND (product#26102 <=> product#26246)) AND (storageLocId#26039 <=> storageLocId#26196)) AND (calculationDateTime#26018 <=> max_calc_datetime#26103))
(196) Project
Arguments: [plant#26101, product#26102, storageLocId#26039, calculationDateTime#26018, quantity#26041]
(197) Aggregate
Arguments: [product#26102, plant#26101], [product#26102, plant#26101, sum(quantity#26041) AS quantitySum#26257, min(calculationDateTime#26018) AS minCalculationDateTime#26258]
(198) Project
Arguments: [product#26102, plant#26101, quantitySum#26257, minCalculationDateTime#26258, round(quantitySum#26257, 0) AS roundedQuantitySum#26266]
(199) Join
Arguments: LeftOuter, ((plant#25912 = plant#26101) AND (product#25911 = product#26102))
(200) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, roundedQuantitySum#26266, minCalculationDateTime#26258]
(201) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, roundedQuantitySum#26266, minCalculationDateTime#26258, CASE WHEN isnotnull(minCalculationDateTime#26258) THEN minCalculationDateTime#26258 ELSE orderDateTime#25913 END AS stockDatetime#26315]
(202) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, roundedQuantitySum#26266, minCalculationDateTime#26258, stockDatetime#26315, CASE WHEN isnotnull(roundedQuantitySum#26266) THEN array(roundedQuantitySum#26266) ELSE array(0.0) END AS stockBatchQuantities#26316]
(203) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, roundedQuantitySum#26266, minCalculationDateTime#26258, stockDatetime#26315, stockBatchQuantities#26316, array(2199-01-01 00:00:00) AS stockBatchShelfLifeEndDatetimes#26317]
(204) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, roundedQuantitySum#26266, stockDatetime#26315, stockBatchQuantities#26316, stockBatchShelfLifeEndDatetimes#26317]
(205) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, stockDatetime#26315, stockBatchQuantities#26316, stockBatchShelfLifeEndDatetimes#26317]
(206) LogicalRelation
Arguments: parquet, [product#26318, plant#26319, demandChannel#26320, demandStream#26321, considerVariance#26322, demandTimeBuckets#26323, demandPointInTimeStart#26324, demandPointInTimeEnd#26325, demandPointInTime#26326], false
(207) Join
Arguments: LeftOuter, ((product#25911 = product#26318) AND (plant#25912 = plant#26319))
(208) Project
Arguments: [product#25911, plant#25912, orderDateTime#25913, productPlant#25925, timezonecode#25943, outboundUnit#25970, stockDatetime#26315, stockBatchQuantities#26316, stockBatchShelfLifeEndDatetimes#26317, demandChannel#26320, demandStream#26321, considerVariance#26322, demandTimeBuckets#26323, demandPointInTimeStart#26324, demandPointInTimeEnd#26325, demandPointInTime#26326]
(209) Filter
Arguments: (((size(demandTimeBuckets#26323, true) = 0) OR isnull(demandTimeBuckets#26323)) AND ((size(demandPointInTime#26326, true) = 0) OR isnull(demandPointInTime#26326)))
(210) Project
Arguments: [product#25911, plant#25912]
(211) Deduplicate
Arguments: [product#25911, plant#25912]
(212) Project
Arguments: [product#25911, plant#25912, UNKNOWN_DEMAND_FOR_PRODUCT_LOCATION AS name#26328]
(213) Project
Arguments: [product#25911, plant#25912, name#26328, 1 AS configurationVersion#26329]
(214) Project
Arguments: [product#25911, plant#25912, name#26328, configurationVersion#26329, array(struct(name, Product, value, cast(product#25911 as string)), struct(name, Plant, value, cast(plant#25912 as string))) AS businessContext#26334]
(215) Project
Arguments: [product#25911, plant#25912, name#26328, configurationVersion#26329, businessContext#26334, 10000000005 AS executionId#26335]
(216) Project
Arguments: [product#25911, plant#25912, name#26328, configurationVersion#26329, businessContext#26334, executionId#26335, DIP_1691 AS marketUnit#26336]
(217) Project
Arguments: [product#25911, plant#25912, name#26328, configurationVersion#26329, businessContext#26334, executionId#26335, marketUnit#26336, 2026-07-04T13:44:29.294Z AS createdAt#26337]
(218) Project
Arguments: [name#26328, configurationVersion#26329, executionId#26335, createdAt#26337, marketUnit#26336, businessContext#26334]
(219) Project
Arguments: [to_json(struct(name, name#26328, configurationVersion, configurationVersion#26329, executionId, executionId#26335, createdAt, createdAt#26337, marketUnit, marketUnit#26336, businessContext, businessContext#26334), Some(UTC)) AS value#39067]
(220) Project
Arguments: [cast(value#39067 as string) AS value#39068]
(221) Project
Arguments: [value#39068, array(struct(key, X-Tenant-ID, value, cast(5330363489248697092 as binary)), struct(key, X-Message-ID, value, cast(3a9c51d6-9a48-40e8-95d9-c876fe4f9833 as binary)), struct(key, X-Event-Type, value, cast(SituationCreate as binary)), struct(key, X-BTP-Tenant-ID, value, cast(d836781e-49f9-415a-a071-0f361c615b04 as binary))) AS headers#39077]