Ecrit par 13 h 00 min Développement web, PHP, Sage

Ajout de fonctionnalité web Gestion Commerciale Sage

Que diriez-vous d’ajouter n’importe quelle fonctionnalité propre à votre entreprise au sein de votre Gestion Commerciale de Sage, facilement et rapidement ? Bon ça fait un peu recette miracle, mais la fonction Programmes externes donne vraiment beaucoup de possibilités !

Imaginons par exemple, que certains de vos articles nécessitent une large quantité d’informations supplémentaires à fournir à la production ou d’autres services de votre entreprise ! Cette fonction permet d’appeler une page web dédiée à cela en passant simplement des paramètres en GET. Démonstration :

Accessible depuis le menu Fenêtre, puis Personnaliser l’interface…

Comme vous pouvez le voir sur la capture ci-dessous,  il suffit d’indiquer le lien de votre page et le plus important : des arguments ! J’ai choisi ici d’ajouter des fonctionnalités aux documents des ventes, je passe donc en argument le NumPiece de la table F_docentete. Les arguments possibles sont accessibles via le bouton calculatrice sur la droite (oui l’icone est particulièrement bien choisie).

Pour ajouter la fonction, vous pouvez ajouter le bouton à votre barre d’outils (clic droit dessus puis Personnaliser la barre de fonction…)

Vous ajoutez ensuite simplement le bouton :

Une fois dans un document de vente, le bouton apparait et vous pouvez sélectionner le programme externe pendant la saisie de votre pièce.

avec un petit bout de code PHP tout bête, vous pouvez vérifier le passage de paramètre :

<?php
$server = 'Serveur\instance';
$msconnect=mssql_connect($server,"compte","mot de passe") or die ('connexion echou&eacute;e');
$msdb=mssql_select_db("NOM_BASE",$msconnect);
echo $ref = $_GET['ref'];
?>

Bon génial, on affiche le numéro de pièce ! Premier problème toutefois : et si le numéro de pièce change ? Pas moyen de mettre des données dans ma base en se fiant à un champs qui va évoluer au fil du temps ! La clé primaire de F_DocEntete s’appelle cbMarq, il va donc falloir se baser dessus, mais évidemment l’argument n’est pas autorisé par Sage : tant pis, une petite requête va nous le donner et le travail sérieux va pouvoir commencer.

<?php
$msquery1 = "select cbMarq from f_docentete where do_piece = '$ref';";
$msresult1= mssql_query($msquery1);
$resultat1=mssql_fetch_array($msresult1);
$cbMarq = $resultat1['cbMarq'];
?>

A partir de là vous pouvez réaliser votre page PHP, avec toutes les sélections souhaitées. Les formulaires peuvent être envoyés sans problème, et la page est actualisable via F5 ou clic droit (il me semble que c’est le moteur d’Internet Explorer derrière cet affichage). Pour ces futurs besoins, vous pouvez créer de nouvelles tables propres à vos fonctionnalités.

Chaque saisie de ligne Gescom est enregistrée en direct quand vous appuyez sur Entrée, si vous souhaitez ajouter des infos aux lignes saisies, mieux vaut donc ouvrir la page de personnalisation une fois toutes les lignes saisies.

Attention toutefois aux erreurs sur votre page. Un navigateur classique s’arrêterait en cas d’erreur, la Gescom semble effectivement le faire, mais en regardant le gestionnaire de tâches, on peut constater assez rapidement, qu’avoir chargé une page avec erreur entraine une envolée exponentielle et inexplicable de la consommation de processeur et de mémoire ! Le plantage de l’application intervient assez rapidement ensuite…

A voir aussi : Intranet web dans Gestion Commerciale Sage

Fermer