Skip to content

Instantly share code, notes, and snippets.

@trplll
Created November 7, 2016 15:15
Show Gist options
  • Save trplll/8f11f6ace40d113ac58255b7398084ce to your computer and use it in GitHub Desktop.
Save trplll/8f11f6ace40d113ac58255b7398084ce to your computer and use it in GitHub Desktop.
JDE Type Param List csv
package com.company;
public class Main{
public static void main (String[] args){
System.out.println("Tal job can convert csv Params to data selection in SQL and Talend components:\n");
System.out.println("Context Var MCUS:\n In URL/BAT:\n --context_param MCUS= 20 , 23, 301 , 21\n In Talend:\n context.MCUS = " +MCUcsvStringtoSQLStringList("20 , 23, 301 , 21"));
System.out.println("\nContext Var DCTOS:");
System.out.println(" In URL/BAT:\n --context_param DCTOS= SO, OP, ST\n In Talend:\n context.DCTOS = " +DCTcsvStringtoSQLStringList(" SO, OP, ST"));
}
public static String SqlFmt_MCU(String stringin) {
return padLeft(stringin, 12);
}
public static String SqlFmt_MCU(Integer integerin) {
return SqlFmt_MCU(integerin.toString());
}
public static String padLeft(String str, int n) {
return String.format("%1$" + n + "s", str.trim());
}
//_
public static String MCUcsvStringtoSQLStringList(String csvstringin) {
StringBuilder outputString = new StringBuilder();
String[] csvSplit = csvstringin.split(",");
if (csvSplit.length == 1 && csvSplit[0] != "") {
return "('" + SqlFmt_MCU(csvSplit[0]) + "')";
} else if (csvSplit.length > 1) {
outputString.append("(");
for (int i = 0; i < csvSplit.length; i++) {
outputString.append("'");
outputString.append(SqlFmt_MCU(csvSplit[i]));
if (i == csvSplit.length - 1) {
outputString.append("'");
} else {
outputString.append("',");
}
}
outputString.append(")");
return outputString.toString();
} else {
return "'()'";
}
}
public static String DCTcsvStringtoSQLStringList(String csvstringin) {
StringBuilder outputString = new StringBuilder();
String[] csvSplit = csvstringin.split(",");
if (csvSplit.length == 1 && csvSplit[0] != "") {
return "('" + SqlFmt_MCU(csvSplit[0]) + "')";
} else if (csvSplit.length > 1) {
outputString.append("(");
for (int i = 0; i < csvSplit.length; i++) {
outputString.append("'");
outputString.append(csvSplit[i].trim());
if (i == csvSplit.length - 1) {
outputString.append("'");
} else {
outputString.append("',");
}
}
outputString.append(")");
return outputString.toString();
} else {
return "'()'";
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment