Hallo,
ich setzte in C# eine MEldung ab, sobald in der Oberfläche ein Artikel ausgedruckt wird. Diese Meldung beinhaltet den Artikel, die Uhrzeit und das Datum, wann gedruckt wurde. Ich setzte diese Meldung in C# über eine SQLTransaction ab. Nun hat meine Anwendung auch ein User in China. Jetzt habe ich bemerkt das sein Eintrag in die Datenbank gar nicht immer stattfindet und irgenwo ins leere läuft. Ich arbeite aus diesem Grund auch nicht bei den Meldungen mit einem DataSet, damit die Meldung "Live" in meine Kontrolltabelle eingetragen wird.
Nun meine grundsaätzlichen Fragen: Wenn ich eine SQLTransaction ausführe, kann ich sicher sein das die auch ankommen muß, auch wenn diese durch eine Firewall gesperrt werden würde? Wäre das so (was ich nicht genau weiß), dann könnt eich das Programm abbrechen, der User wäre gezwungen die Firewall zu öffnen um den Meldungseintrag zu ermöglichen.
Habe ich eine relativ einfache Möglichkeit zu prüfen, ob der Meldeeintrag durchgegangen ist? Kann das sein, das das Timeout der Verbindung erhöht weren muß?
Ich habe den Meldeeintrag nachfolgend beigefügt:
string strSQL = "INSERT INTO Kontrolltabelle (ID, USERNAME, MACHINENAME, LEVEL, DATE, TIME, PU, HARDCOPY) VALUES ("
+ "'" + id + "'" + ", '" + userName + "', '" + machineName + "', '" + level + "', '" + date + " ', '" + time + "', '" + pu + "', '" + "PRINT" + "')";
SqlTransaction trans;
SqlConnection conn = new SqlConnection(verbindung);
try
{
conn.Open();
trans = conn.BeginTransaction();
try
{
SqlCommand cmd = new SqlCommand(strSQL, conn);
cmd.Transaction = trans;
cmd.CommandText = strSQL;
cmd.ExecuteNonQuery();
trans.Commit();
}
catch (Exception e)
{
trans.Rollback();
MessageBox.Show(e.Message, "Error --> Try again");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error");
}
conn.Close();
Hallo,
- date + " ', '" + time + "',
Ganz schlecht !
Lies bitte die FAQ zu Parametern und baue Dein Programm um.
Hat Dein Anwender in China ein deutsches Windows mit deutscher Ländereinstellung ?
Grüße Bernd
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3