Révision 2950

tmp/org.txm.groovy.core/src/groovy/org/txm/macro/projects/antract/BuildAFMetadataMacro.groovy (revision 2950)
33 33
	table2File = new File(tableFile.getParentFile(), "emissions.xlsx");
34 34
	HashMap<String, String> lineRules = new HashMap<>(); // line tests to select line to keep
35 35
	List<String> columnsSelection; // list of columns to keep
36
	List<String> dateColumnsSelection = []
36 37
	HashMap<String, String[]> columnsToCopy = new HashMap<>();
37 38
	HashMap<String, String> columnsToRenameRules = new HashMap<>();
38 39
	HashMap<String, String[]> searchAndReplaceRules = new HashMap<>();
......
45 46
	
46 47
	lineRules.put("Type de notice", "Notice sommaire");
47 48
	
49
	dateColumnsSelection.add("Date de diffusion");
50
	datePattern = "dd/MM/yyyy"
51
	
48 52
	columnsToRenameRules.put("Identifiant de la notice", "id");
49 53
	
50
	columnsToCopy.put("Notes du titre", ["subtitle"] as String[]);
54
	//columnsToCopy.put("Notes du titre", ["subtitle"] as String[]);
51 55
	columnsToCopy.put("Titre propre", ["title"] as String[]); 
52
	columnsToCopy.put("Date de diffusion", ["textorder", "annee"] as String[]);
56
	columnsToCopy.put("Date de diffusion", ["textorder"] as String[]);
53 57
	
54 58
	searchAndReplaceRules.put("textorder", ["([0-9][0-9])/([0-9][0-9])/([0-9][0-9][0-9][0-9])", '$3$2$1'] as String[]); // not working yet
55
	searchAndReplaceRules.put("annee", ["([0-9][0-9])/([0-9][0-9])/([0-9][0-9][0-9][0-9])", '$3'] as String[]); // not working yet
56 59
	
57
	process(excel, table2File, lineRules, columnsSelection, columnsToCopy, searchAndReplaceRules, columnsToRenameRules, normalizeSearchAndReplacePattern)
60
	process(excel, table2File, lineRules, columnsSelection, columnsToCopy, searchAndReplaceRules, columnsToRenameRules, normalizeSearchAndReplacePattern, dateColumnsSelection, datePattern)
58 61
}
59 62

  
60 63
if (buildSujetsMetadata) {
......
62 65
	table2File = new File(tableFile.getParentFile(), "sujets.xlsx");
63 66
	HashMap<String, String> lineRules = new HashMap<>(); // line tests to select line to keep
64 67
	List<String> columnsSelection; // list of columns to keep
68
	List<String> dateColumnsSelection = []
65 69
	HashMap<String, String[]> columnsToCopy = new HashMap<>();
66 70
	HashMap<String, String> columnsToRenameRules = new HashMap<>();
67 71
	HashMap<String, String[]> searchAndReplaceRules = new HashMap<>();
......
75 79
		"Résumé", "Séquences", "Descripteurs (Aff. Lig.)", "Générique (Aff. Lig.)");
76 80
	
77 81
	lineRules.put("Type de notice", "Notice sujet");
82
	
83
	dateColumnsSelection.add("Date de diffusion");
84
	datePattern = "dd/MM/yyyy"
78 85

  
79
	searchAndReplaceRules.put("textorder", ["([0-9][0-9])/([0-9][0-9])/([0-9][0-9][0-9][0-9])", '$3$2$1'] as String[]);
80
	searchAndReplaceRules.put("annee", ["([0-9][0-9])/([0-9][0-9])/([0-9][0-9][0-9][0-9])", '$3'] as String[]);
81
		
82
	process(excel, table2File, lineRules, columnsSelection, columnsToCopy, searchAndReplaceRules, columnsToRenameRules, normalizeSearchAndReplacePattern)
86
	process(excel, table2File, lineRules, columnsSelection, columnsToCopy, searchAndReplaceRules, columnsToRenameRules, normalizeSearchAndReplacePattern, dateColumnsSelection, datePattern)
83 87
}
84 88

  
85
def process(ReadExcel excel, File table2File, def lineRules, def columnsSelection, def columnsToCopy, def searchAndReplaceRules, def columnsToRenameRules, def normalizeSearchAndReplacePattern) {
89
def process(ReadExcel excel, File table2File, def lineRules, def columnsSelection, def columnsToCopy, def searchAndReplaceRules, def columnsToRenameRules, def normalizeSearchAndReplacePattern, def dateColumnsSelection, String datePattern) {
86 90
	System.out.println("Writing: $table2File");
87 91
	
88 92
	table2File.delete();
......
101 105
	excel2.searchAndReplaceInLines(normalizePatternRules);
102 106
	
103 107
	if (columnsToCopy.size() > 0) {
104
		System.out.println(" Copying column: " + columnsToCopy);
108
		System.out.println(" Copying columns: " + columnsToCopy);
105 109
		excel2.copyColumns(columnsToCopy);
106 110
	}
107 111
		
112
	if (dateColumnsSelection.size() > 0) {
113
		System.out.println(" Format Date columns: " + dateColumnsSelection);
114
		excel2.formatDateColumns(dateColumnsSelection, datePattern);
115
	}
116
	
108 117
	if (searchAndReplaceRules.size() > 0) {
109 118
		System.out.println(" Search&Replace in columns: " + searchAndReplaceRules);
110 119
		excel2.searchAndReplaceInLines(searchAndReplaceRules);
111 120
	}
112 121
	
113 122
	if (columnsToRenameRules.size() > 0) {
114
		System.out.println(" Renaming column: " + columnsToRenameRules);
123
		System.out.println(" Renaming columns: " + columnsToRenameRules);
115 124
		excel2.renameColumns(columnsToRenameRules);
116 125
	}
117 126
	

Formats disponibles : Unified diff