int success = 0;
int error = 0;
DBService service = de.willuhn.jameica.hbci.Settings.getDBService();
CSatz c = null;
while ((c = parser.next()) != null)
{
try
{
// Mit diesem Factor sollte sich der Fortschrittsbalken
// bis zum Ende der DTAUS-Datei genau auf 100% bewegen
monitor.setPercentComplete((int)((++count) * factor));
monitor.log(i18n.tr("Importiere Datensatz {0}",c.getNameEmpfaenger()));
// Gewuenschtes Objekt erstellen
final DBObject skel = service.createObject(((MyIOFormat)format).type,null);
// Mit Daten befuellen lassen
create(skel,context,c,a);
success++;
// Jetzt noch ggf. andere ueber das neue Objekt informieren
try
{
Application.getMessagingFactory().sendMessage(new ImportMessage(skel));
}
catch (Exception ex)
{
Logger.error("error while sending import message",ex);
}
}
catch (ApplicationException ace)
{
error++;
StringBuffer sb = new StringBuffer();
sb.append(i18n.tr("BLZ: {0}",Long.toString(c.getBlzEndbeguenstigt())));
sb.append("\n");
sb.append(i18n.tr("Kontonummer: {0}",Long.toString(c.getKontonummer())));
sb.append("\n");
sb.append(i18n.tr("Name: {0}",c.getNameEmpfaenger()));
sb.append("\n");
sb.append(i18n.tr("Betrag: {0}",HBCI.DECIMALFORMAT.format(c.getBetragInEuro())));
String s = i18n.tr("Fehler beim Import eines Datensatzes\n\n{0}\n\n{1}\n\nDatensatz �berspringen und Import fortsetzen?",new String[]{sb.toString(),ace.getMessage()});
if (!Application.getCallback().askUser(s))
{
monitor.setStatusText(i18n.tr("Import abgebrochen"));