salve a tutti ho questo pezzo di codice che mi legge una tabella di un database e mi scrive su una tabella di un altro database
come potete vedere dentro la condizione if mi deve scrivere il valore del prezzo della tabella vecchia nella colonna sconto della nuova, ma non su una riga successiva, lo deve fare nella riga precendente, quindi come faccio a puntare alla riga precedente?codice:foreach (DataTable table in myDataSet.Tables) { foreach (DataRow row in table.Rows) { if (row["Tipologia"].ToString() == "ScontoArt") { string thisQuery = "INSERT INTO Righe (Sconto) VALUES (@Sconto)"; SqlCeCommand thisCommand = new SqlCeCommand(thisQuery, con); thisCommand.Parameters.AddWithValue("@Sconto", row["Prezzo"]); thisCommand.ExecuteNonQuery(); } else { string thisQuery = "INSERT INTO Righe (Descrizione, Gruppo, Quantita, Prezzo, Operatore, Listino, Iva) VALUES (@Descrizione, @Gruppo, @Quantita, @Prezzo, @Operatore, @Listino, @Iva)"; SqlCeCommand thisCommand = new SqlCeCommand(thisQuery, con); //comando per SDF con la query per l'inserimento thisCommand.Parameters.AddWithValue("@Descrizione", row["Descrizione"]); //parametri di appoggio per l'inseriemnto nell'SDF thisCommand.Parameters.AddWithValue("@Gruppo", row["Tipologia"]); thisCommand.Parameters.AddWithValue("@Quantita", row["Qta"]); thisCommand.Parameters.AddWithValue("@Prezzo", row["Prezzo"]); thisCommand.Parameters.AddWithValue("@Operatore", row["Operatore"]); thisCommand.Parameters.AddWithValue("@Listino", row["Listino"]); thisCommand.Parameters.AddWithValue("@Iva", row["Iva"]); thisCommand.ExecuteNonQuery();//esecuzione del comando } //} } }

Rispondi quotando