import com.ablia.db.ApplParm; import com.ablia.db.ApplParmFull; import com.ablia.db.DBAdapter; import com.ablia.tex.anag.ArticoloTessuto; import com.ablia.util.DbConsole; import com.ablia.util.Vectumerator; import java.sql.Time; import java.util.StringTokenizer; public class SalvaTessuti extends DbConsole { public static void main(String[] args) { SalvaTessuti bean = new SalvaTessuti(); bean.doImport(); System.exit(0); } public void doImport() { String db = "tf19"; int i = 0; int se1 = 10; int se2 = 100; String hostname = "localhost"; String temp = getCi().readLine("Hostname (" + hostname + "):"); if (!temp.isEmpty()) hostname = temp; temp = getCi().readLine("Database name (" + db + "):"); if (!temp.isEmpty()) db = temp; System.out.println("Db: " + db); ApplParmFull apTarget = new ApplParmFull(new ApplParm(3, "//" + hostname + "/" + db, "root", "root", 1, 10, 300)); apTarget.setDebug(false); StringBuffer msg = new StringBuffer(); try { ArticoloTessuto bean = new ArticoloTessuto(apTarget); System.out.println("ciclo tessuti"); Vectumerator vec = bean.findAll(); System.out.println("Tot Record: " + vec.getTotNumberOfRecords()); while (vec.hasMoreElements()) { ArticoloTessuto row = (ArticoloTessuto)vec.nextElement(); if (row.getCodiceAT().length() < 4) { row.setCodiceAT(DBAdapter.zeroLeft(row.getCodiceAT(), 4)); row.superSave(); } i++; if (se1 > 0 && i % se1 == 0) System.out.print("."); if (se2 > 0 && i % se2 == 0) System.out.println(i); } System.out.println("fine ciclo \n" + msg.toString()); } catch (Exception e) { e.printStackTrace(); } } protected Time getTimeFromString(String theTime) { try { if (theTime.matches("[0-9][0-9][0-9][0-9]")) theTime = String.valueOf(theTime.substring(0, 2)) + ":" + theTime.substring(2, 4); if (theTime.matches("[0-9]{1,2}+:[0-9]{1,2}+")) { StringTokenizer st = new StringTokenizer(theTime, ":"); int hour = Integer.parseInt(st.nextToken()); int min = Integer.parseInt(st.nextToken()); int sec = st.hasMoreElements() ? Integer.parseInt(st.nextToken()) : 0; return new Time((long)((hour - 1) * 3600000 + min * 60000 + sec * 1000)); } if (theTime.matches("[0-9]{1,2}+:[0-9]{1,2}+:[0-9]{1,2}+")) { StringTokenizer st = new StringTokenizer(theTime, ":"); int hour = Integer.parseInt(st.nextToken()); int min = Integer.parseInt(st.nextToken()); int sec = st.hasMoreElements() ? Integer.parseInt(st.nextToken()) : 0; return new Time((long)((hour - 1) * 3600000 + min * 60000 + sec * 1000)); } return null; } catch (Exception e) { return null; } } }