Bonjour à tous,
Est-il possible d'écrire une instruction select pour une colonne où, si la colonne ne contient pas la valeur souhaitée, elle ne fera rien, mais si la colonne contient la valeur que je recherche, je peux lui faire exécuter des scripts supplémentaires ?
J'ai une colonne Code de notification qui contient 3 valeurs "1-Addition", "3-Update" et "4-Delete" qui fait partie de mes données transactionnelles. Lorsque la table est mise à jour et qu'il y a un "4-Supprimer" dans la colonne, je sous-ensemble actuellement les données, puis je les fais correspondre/mis à jour avec le fichier d'origine afin de déterminer la première instance (c'est-à-dire l'ajout ou la mise à jour) et supprimez les deux enregistrements de la transaction hors de la table. Aujourd'hui, c'est la première fois que les données ont été mises à jour et ne contiennent pas de 4-Delete. Cela a amené mon instruction select et delete à supprimer tous les enregistrements de la table. Exemple de JSL actuel pour Select et Supprimer ci-dessous :
rowchoice = dt3 << Get Rows Where (:Notification Code == "4-Delete");
dt3 << Select Rows (rowchoice);
subdt1 = dt3 << Subset(
Link to Original Data Table (0),
Rows(),
Output Table Name ("Deletions")
);
subdt1.2 = Current Data Table ();
subdt1.2 << Delete Column (:N Rows);
subdt1.2 << New Column ("Deletions", Numeric, Continous,
<< set each value(1)
);
dt3 << Update (
With (Data Table ("Deletions")),
Match Columns (:ROL Case # == :ROL Case #, :"Card/Account Number" == :"Card/Account Number"),
Selected (:Deletions)
);
Close(subdt1.2, No Save);
rowchoice = dt3 << get rows where (:Deletions == 1);
dt3 << Select Rows(rowchoice);
dt3 << Delete Rows (rowchoice);
dt3 << Delete Column (:Deletions);
Toute aide est grandement appréciée.
Cela a très bien fonctionné ! Merci pour l'aide!
D'après ce que je peux dire, ce qui suit fonctionnera
rowchoice = dt3 << Get Rows Where (:Notification Code == "4-Delete");
If( N Rows( rowchoice ) > 0,
dt3 << Select Rows (rowchoice);
subdt1 = dt3 << Subset(
Link to Original Data Table (0),
Rows(),
Output Table Name ("Deletions")
);
subdt1.2 = Current Data Table ();
subdt1.2 << Delete Column (:N Rows);
subdt1.2 << New Column ("Deletions", Numeric, Continous,
<< set each value(1)
);
dt3 << Update (
With (Data Table ("Deletions")),
Match Columns (:ROL Case # == :ROL Case #, :"Card/Account Number" == :"Card/Account Number"),
Selected (:Deletions)
);
Close(subdt1.2, No Save);
rowchoice = dt3 << get rows where (:Deletions == 1);
dt3 << Select Rows(rowchoice);
dt3 << Delete Rows (rowchoice);
dt3 << Delete Column (:Deletions);
);