SQL scripts


Swisslog a une fonction très puissante pour exécuter des Scripts SQL permettant l'exécution de requêtes complexes pour modifier les champs ou déplacer des données d'un champ à un autre. Nous évitons ainsi d'utiliser des opérations complexes dans l'affichage du LOG. Cependant, les scripts SQL sont exécutés en quelques secondes et peuvent effectuer des opérations complexes qui ne peuvent se faire avec les fonctions disponibles fournies par Swisslog.

I'ai créé quelques scripts que vous pouvez trouver très utiles. Je ne suis pas du tout un expert en SQL, mais avec l'aide de mes connaissances en Access et d'un affichage spécial pour voir le code SQL généré dans les requêtes, j'ai pu en créer avec succès.

Pour exécuter ce script suivez les étapes suivantes :

1. Démarrez SWISSLOG
2. Ouvrez Outils | Pour experts seulement | Exécuter le script SQL
3. Selectionnez le fichier de script de votre choix dans le répertoire SCRIPTS  (qui est un sous-répertoire de celui ou Swisslog est installé), répondez OK à tous les messages de confirmation.

TRES IMPORTANT: En raison du nombre de controles et/ou de modifications de données que le Script peut gérer,  cette opération peut prendre quelque temps. Cela depend de la vitesse de votre ordinateur et du nombre de QSOs dans votre base de données . AUCUNE BARRE DE PROGRESSION n'est affichée !  Vous devez attendre jusqu'à ce que le message "SQL script_filename.sql exécutée avec succès" s'affiche avant de faire quoi que ce soit d'autre dans Swisslog.

SQL scripts:

DXCC - WAE Corrections.sql

NOTE: Ce sript est éxécuté automatiquement en mode invisible au premier démarrage de la version 5.9a. Vous n'avez pas besoin de l'éxécuter à nouveau si vous utilisez la version 5.9a ou supérieur. Vous en avez l'explication pour savoir ce que ce script effectue.

Jusqu'à présent, chaque fois que la table d'allocation de préfixe de certaines entités était modifiée, une opération manuelle très compliquée devait être effectuée pour adapter vos QSOs à la nouvelle situation. Grâce à la puissance du script SQL, cette opération peut être maintenant effectuée  automatiquement en quelques secondes !

J'ai créé un script qui adapte automatiquement les allocations de préfixe précédemment appliquées par Hardy, DL5SBA (SK) (Monténégro, les Iles Cook, la Bosnie Herzegovine, Juan de Nova et Europe, Glorioso, Tromelin, le Sud-Soudan ainsi que d'autres modifications) en toute sécurité, automatiquement et en quelques secondes!. Nous évitons ainsi d'utiliser les procédures manuelles  expliquées jusqu'à maintenant et qui pourraient  provoquer des erreurs commises par l'utilisateur. Le meilleur dans tout ça est que, même si vous avez déjà effectué les opérations manuellement, vous pouvez maintenant exécuter ce script sans aucun problème ! Si toutes les opérations ont été bien effectuées, ça ne changera rien. Dans le cas contraire, le script va le corriger !

Ce script effectue les modifications suivantes :

Set direct in QSO without bureau.sql

Ce script est très utile pour éviter d'envoyer une QSL via bureau à vos correpondants sans bureau QSL. Il sélectionne tous les QSO dont l'entité ne dispose pas d'un service bureau (le champ  QSL Manager étant vide, aucune QSL n'a été envoyée/reçue et l'action_ QSL est différente de   LOTW, LOTW+eQSL et eQSL) et définit à "Direct" le champs Action-QSL. Si un QSO comporte un QSL-manager, il est hors sélection du script, puisque la QSL peut être éventuellement envoyée via bureau au qsl-manager,.

Si vous voulez remplacer "Direct" par un autre mot, modifiez simplement ce fichier avec un éditeur de texte (Notepad par exemple) et modifiez "Direct" dans le première ligne de code (en caractères gras dans les lignes de code ci dessous):

UPDATE (PQTH INNER JOIN LOGBOOK ON PQTH.P_CALLID = LOGBOOK.L_CALLID) INNER JOIN DXCC_Tab ON PQTH.P_DXCC = DXCC_Tab.DXCC_ABBR SET LOGBOOK.L_QSL_ACTION = "Direct" WHERE (((LOGBOOK.L_QSL_ACTION)<>"LOTW" And (LOGBOOK.L_QSL_ACTION)<>"LOTW+eQSL" And (LOGBOOK.L_QSL_ACTION)<>"eQSL") AND ((LOGBOOK.L_QSL_RECEIVED)=0) AND ((LOGBOOK.L_QSL_SEND)=0) AND ((LOGBOOK.L_QSL_MGR) Is Null) AND ((DXCC_Tab.BUREAU)="N"));

NOTE: A partir de la version 5.94 Swisslog effectue ceci automatiquement à la sauvegarde d'un QSO. Si le panneau membership est activé et si   "Appliquer les actions QSL à partir du panneau Membership" est coché, DIRECT ne sera renseigné que si le partenaire n'est  utilisateur ni de LOTW ni eQSL.

QSL managers.sql

NOTE: Ce sript est éxécuté automatiquement en mode invisible au premier démarrage de la version 5.9a. Vous n'avez pas besoin de l'éxécuter à nouveau si vous utilisez la version 5.9a ou supérieur.

Ce script compare automatiquement vos QSO avec une liste à jour  de quelques 3000 stations gérées par les QSL managers suivants : EA1EAU, EA5GL, EA5KB, EA7FTR, EB7DX, IZ8CCW, IZ8CLM, M0OXO, N2OO, UA4WHX, RW6HS and W3HNK. Puis le script va définir le QSL manager dans tous les QSO concordants SEULEMENT  si vous n'avez pas reçu de carte QSL (le champ R-QSL est à 0) et si le champ QSL-manager est vide. Cette opération peut prendre quelque temps.

LOTW users.sql

Pour éviter d'envoyer des cartes QSL à des utilisateurs de LOTW, ce script definit à LOTW le champ Action-QSL dans tous les  QSO pour lesquels une QSL n'a pas été reçue. Assurez vous d'avoir mis à jour la liste des utilisateurs LOTW avant d'éxécuter ce script. Vous pouvez le mettre à jour manuellement dans  Outils | Mettre à jour Informations de Diplomes (internet) | Mettre à jour la liste des utilisateurs LOTW. Dans l'assistant imprimer les QSL vous pouvez éviter de sélectionner ces QSO pour l'impression des cartes QSL.

NOTE: Si le panneau membership est activé et si  "Appliquer les Actions-QSL à partir du panneau Membership" est coché, ceci est effectué automatiquement à l'ajout d'un nouveau QSO si l'indicatif appartient à un utilisateur LoTW.

Clean special field.sql

Si vous utilisez le WFF diplôme (World Flora & Fauna) vous devez exécuter ce script SQL pour vider le contenu de ce champ spécial, seulement une fois et avant de saisir une quelconque référence WFF. Il faut le faire et particulièrement les utilisateurs des versions DOS, car le champ SP peut contenir des données obsolètes.

Set WADA.sql

Ce SQL définit la référence WADA pour tous les indicatifs se trouvant dans la nouvelle table interne d'informations INF_WAPWACA. Si vous recherchez ce diplome vous DEVEZ éxécuter ce script de temps en temps. Gardez à l'esprit que le même indicatif a pu être actif de plusieurs références WADA. Dans ce cas, le script va régler la premiere coincidence. L'utilisateur devra ensuite verifier manuellement la référence avec la  QSL.

Convert IIA.sql

NOTE: Ce sript est éxécuté automatiquement en mode invisible au premier démarrage de la version 5.94. Vous n'avez pas besoin de l'éxécuter à nouveau si vous utilisez la version 5.94 ou supérieur.

Le diplome Italian Island Award (IIA)  a changé de références à partir du 1er Janvier 2013. Ce script convertit toutes les vieilles references en nouveau format.