Exemple - 6.5

Guide de référence des scripts de Jobs Talend

EnrichVersion
6.5
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
EnrichPlatform
Studio Talend
Talend CommandLine
task
Création et développement > Création de Jobs

L'exemple d'utilisation du tMap ci-dessous montre comment :

  • autoriser la conversion automatique des types de données
  • définir des schémas de sortie
  • définir une table d'entrée principale et une table de référence, reliées par une jointure Inner Join
  • définir une table de variables
  • définir des mappings entre les tables d'entrée, de variables et de sortie
  • définir la transformation des données
addComponent {
	setComponentDefinition {
		TYPE: "tMap",
		NAME: "tMap_1",
		POSITION: 512, 160
	}
	setSettings {,
		ENABLE_AUTO_CONVERT_TYPE : "true"
	}
	addSchema {
		NAME: "out1",
		CONNECTOR: "FLOW",
		LABEL: "out1"
		addColumn {
			NAME: "id",
			TYPE: "id_Integer"
		}
		addColumn {
			NAME: "fullName",
			TYPE: "id_String"
		}
	}
	addSchema {
		NAME: "out2",
		CONNECTOR: "FLOW",
		LABEL: "out2"
		addColumn {
			NAME: "id",
			TYPE: "id_Integer"
		}
		addColumn {
			NAME: "firstName",
			TYPE: "id_String"
		}
	}
	addMapperData {
		addInputTable {
			NAME: "row1"
			addColumn {
				NAME: "id",
				TYPE: "id_Integer"
			}
			addColumn {
				NAME: "firstName",
				TYPE: "id_String"
			}
		}
		addInputTable {
			NAME: "row2",
			ISINNERJOIN: true
			addColumn {
				NAME: "id",
				TYPE: "id_Integer",
				EXPRESSION: "row1.id "
			}
			addColumn {
				NAME: "lastName",
				TYPE: "id_String",
				EXPRESSION: "\"London\""
			}
		}
		addVarTable {
			NAME: "Variables"
			addColumn {
				NAME: "var1",
				TYPE: "id_String",
				NULLABLE: true,
				EXPRESSION: "StringHandling.UPCASE(row2.lastName)"
			}
		}
		addOutputTable {
			ID: "",
			NAME: "out1"
			addColumn {
				NAME: "id",
				TYPE: "id_Integer",
				EXPRESSION: "row1.id"
			}
			addColumn {
				NAME: "fullName",
				TYPE: "id_String",
				EXPRESSION: "row1.firstName + \" \" + Variables.var1"
			}
		}
		addOutputTable {
			ID: "",
			NAME: "out2",
			REJECTINNERJOIN: true
			addColumn {
				NAME: "id",
				TYPE: "id_Integer",
				EXPRESSION: "row1.id"
			}
			addColumn {
				NAME: "firstName",
				TYPE: "id_String",
				EXPRESSION: "row1.firstName + \"(Last name mismatch or missing)\""
			}
		}
	}
}