{ "name": "dataflow1", "properties": { "type": "MappingDataFlow", "typeProperties": { "sources": [ { "dataset": { "referenceName": "AzureSqlTable1", "type": "DatasetReference" }, "name": "source1" } ], "sinks": [ { "dataset": { "referenceName": "AzureSqlTable2", "type": "DatasetReference" }, "name": "sink1" } ], "transformations": [ { "name": "Aggregate1" } ], "script": "parameters{\n\tgroupbycols as string[] ( [\r\n \"account\",\r\n \"name\"\r\n ]),\n\taggrbycols as string[]\n}\nsource(output(\n\t\tid as integer,\n\t\taccount as string,\n\t\tcurrency as string,\n\t\tBEA_num as integer,\n\t\tGEA_num as integer\n\t),\n\tallowSchemaDrift: true,\n\tvalidateSchema: false,\n\tignoreNoFilesFound: false,\n\tisolationLevel: 'READ_UNCOMMITTED',\n\tformat: 'table') ~> source1\nsource1 aggregate(groupBy(col1 = byName($groupbycols[1]),\n\t\tcol2 = byName($groupbycols[2])),\n\tcolumn1 = count(byName($aggrbycols[1])),\n\t\tcolumn2 = count(byName($aggrbycols[2]))) ~> Aggregate1\nAggregate1 sink(allowSchemaDrift: true,\n\tvalidateSchema: false,\n\tdeletable:false,\n\tinsertable:true,\n\tupdateable:false,\n\tupsertable:false,\n\trecreate:true,\n\tformat: 'table',\n\tmapColumn(\n\t\tcol1,\n\t\tcol2,\n\t\tcolumn1,\n\t\tcolumn2\n\t),\n\tskipDuplicateMapInputs: true,\n\tskipDuplicateMapOutputs: true,\n\terrorHandlingOption: 'stopOnFirstError') ~> sink1" } } }