Blogs officiels sur tous les services et produits de PC SOFT
Publié par
10:15 Lundi
27 Oct. 2014

[Billet publié dans le blog Le blog du ST]

Des nouveautés et spécificités apportées par la version 8 de iOS peuvent avoir une incidence sur les applications exécutées sous cette version du système des iPad, iPhone et iPod.

Afin de conserver sous iOS 8 un comportement identique à celui obtenu sous iOS 7, il faut inciter les mises à jour vers iOS 8.1 qui apporte de nombreux correctifs et fonctionnalités. D'autre part une mise à jour du framework a été faite pour la version 190056s de WINDEV Mobile 19. 

Le pack de mise à jour est dans l'espace téléchargement de WINDEV Mobile : 

Cette mise à jour permet principalement de :
  • conserver l'application active lors de la mise en veille (cf. FAQ 9726), 
  • rétablir le positionnement des champs lors de l'affichage du clavier de saisie sur iPAD orienté en paysage, 
  • utiliser les notifications Push, 
  • récupérer la position courant avec la fonction GPSRecupèrePosition,
  • afficher les pastilles avec la fonction SysIconeBadge,
  • éviter un blocage dans le cas d'une animation de fenêtre de gauche à droite 
  • sélectionner un agencement par programmation avec la fonction FenChangeAgencement ...


Publié par
08:34 Jeudi
09 Oct. 2014

[Billet publié dans le blog Le blog du ST]

Le sommaire de la LST 98 est en ligne !


  • WINDOWS : SCANNER UN CODE-BARRES À L'AIDE D'UNE WEBCAM 
  • PROGRAMMATION OBJET : MISE EN PLACE DU DESIGN PATTERN OBSERVATEUR 
  • SÉCURISER UNE APPLICATION WINDOWS OU UN SITE GRÂCE À LA DOUBLE AUTHENTIFICATION 
  • GROUPWARE INTRANET : “CHANGER D'UTILISATEUR” 
  • PAYBOX : NOUVELLE VERSION DU COMPOSANT DE PAIEMENT SÉCURISÉ 
  • DES COPIES D'ÉCRAN DE QUALITÉ POUR GOOGLE PLAYSTORE ! 
  • BEST PRACTICE : EXECUTER DE MANIERE PERIODIQUE UN TRAITEMENT 
  • PDF : LIRE OU REMPLIR UN FORMULAIRE AUTOMATIQUEMENT 
  • FINIES LES VALIDATIONS ACCIDENTELLES ! 
  • DÉCOUVERTE DE FONCTIONS WINDEV 
  • QUESTIONS & RÉPONSES 
  • PERSONNALISEZ VOS SITES AVEC UNE NOUVELLE AMBIANCE 
  • VOS APPLICATIONS MOBILES AVEC UN NOUVEAU GABARIT 
  • UTILITAIRE : “WD FILEBOX” POUR SYNCHRONISER OU PARTAGER DES FICHIERS 
  • FORMULAIRE/SONDAGE : AUGMENTEZ LE TAUX DE RÉPONSE ! 
  • DO YOU SPEAK ENGLISH? ¿ HABLAS ESPAÑOL ? 
  • PROPOSEZ UNE SAISIE RAPIDE OU UN MODE SIMPLIFIÉ D'UNE FENÊTRE SANS DUPLIQUER ! 
  • MAC OS X : 6 POINTS IMPORTANTS LORS DU DÉVELOPPEMENT 
  • TRANSFORMER UNE BASE DE NUMÉROS DE TÉLÉPHONE AU FORMAT INTERNATIONAL 
  • ZOOM SUR LA FONCTION SQL “DECODE” 
  • IMPRIMER “TEL QUEL” CE QUE L'UTILISATEUR VOIT À L'ÉCRAN 
  • DES TEXTES TOUJOURS LISIBLES ! 
  • LE SAVIEZ-VOUS ? 

Disponibilité prévisionnelle :
  • à partir du 27 Octobre 2014 pour la France métropolitaine , 
  • DOM-TOM et hors France, prévoir une semaine supplémentaire.
Publié par
15:31 Mardi
07 Oct. 2014

[Billet publié dans le blog Le blog du ST]

Le rendu des site dans les navigateurs est un vaste sujet, au fil des versions des navigateurs les technologies évoluent et donc les façons de développer les sites progressent. WEBDEV gomme la majeure partie des différences entres les moteurs de rendu des navigateurs, comme cela a souvent été abordé dans le blog (cf. "liens sur le même sujet" en fin de billet). 

Cependant pour profiter pleinement de tout le "savoir-faire" de la génération des pages de WEBDEV, il est important d'utiliser ses solutions de mises en page les plus récentes. Voici donc les recommandations principales à appliquer pour la création de vos sites, mais également en "repassant" pour mise à jour sur les pages d'un site développé il y a quelques années :

  1. Norme de génération, paramétrable dans le volet "Avancé" de la description du projet : utiliser HTML 5.



    Les sites utiliseront ainsi le mode de rendu le plus récent des navigateurs, et non pas un de leurs modes de compatibilité. 

    Attention, bien vérifier que les pages utilisent la norme du projet :
  2. Champs superposables : les supprimer !
    S'il y a quelques années l'option "le champ peut être superposé" proposée pour tous les champs était pratique pour forcer la position d'un champ, à l'inverse avec les navigateurs actuels elle peut provoquer des effets inattendus sur les ancrages. 
    Si un champ doit obligatoirement être au dessus d'un autre, seul le champ par dessus doit avoir l'option "le champ peut être superposé" cochée.
  3. Superpositions invalides et erreurs d'IHM : toujours les activer ! 
    Ces deux options sont fondamentales. Toute erreur d'ihm ou de superposition laissée dans un site, provoquera invariablement un positionnement erroné dans un navigateur ou un autre.



  4. Positionnement et regroupement des champs : supprimer les cellules qui ne sont plus obligatoires maintenant grâce au zoning !
    Surtout pour les sites créés avant la version 17, ou après sans utiliser le zoning, supprimer les cellules qui servaient à positionner les champs afin de les remplacer par des zones de mise en page : 



  5. Mention spéciale pour Internet Explorer : supprimer les méta "X-UA-Compatible = IE???".
    Avant la version 11 de IE, il n'était pas rare de devoir "forcer" le moteur de rendu de IE à utiliser un de ses nombreux modes de compatibilité afin d'avoir le bon résultat. De nombreuses pages contiennent pour cela une commande "méta-http" de type "X-UA-Compatible IE???". A partir du moment ou le site est maintenant généré en HTML 5 en appliquant les conseils ci-dessus, les commandes "méta" peuvent être retirées.
    Exception pour confirmer la règle, les sites sous IE toutes versions confondues utilisés dans un contexte Intranet sécurisé : FAQ 6 756.

Pour les nouvelles pages créées en version 19 il est facile d'utiliser directement le zoning et d'appliquer toutes ses recommandations.

Dans le cas de la reprise de pages existantes pour leur évolution, la tâche peut sembler complexe ou coûteuse en temps. En pratique grâce à la simplicité du mode d'édition en zoning, l'opération est rapide à condition de ne pas avoir peur d'y aller franchement.
En cas de fausse manipulation un paire de Ctrl+Z ou une annulation de l'extraction du GDS permet tout de suite de faire marche arrière. En découle une méthodologie "radicale" pour "rajeunir" une page utilisant des cellules et superpositions :

  • s'assurer que les erreurs d'IHM et de superposition sont affichées, 
  • éditer la description des cellules qui regroupent les champs dans la page, 
  • utiliser le bouton "enlever" afin de supprimer les champs des cellules, 
  • supprimer les cellules une fois qu'elles n'ont plus de champs, 
  • passer sur le volet "Zoning" de l'éditeur de pages, 
  • définir l'ancrage voulu pour la zone unique qui constitue la page, 
  • utiliser "découper" et "subdiviser" afin de délimiter les différentes zones qui composent la page (les cellules utilisées précédemment), 
  • ajuster couleurs de fond et cadres des différentes zones (si une couleur n'est pas affichée, c'est que l'affichage de la table de positionnement est en cours, ctrl+u permet de revenir à l'affichage des couleurs), 
  • placer les différents ancrages de chaque zone (bandeau en haut, à droit, centrage dans le navigateur d'une des zones...), 
  • repasser en édition de page, 
  • sélectionner tous les champs (ctrl+A), dans la fenêtre de description volet "ihm" décocher "le champ peut être superposé", 
  • ajuster les différents champs sur les zones. 
  • C'est terminé ! 
La page utilise maintenant les solutions les plus actuelles : elle est plus rapide, son rendu sera plus fiable d'un navigateur à l'autre. Bien sûr WEBDEV assure toujours la compatibilité, il n'y a donc aucune obligation à reprendre "immédiatement" toutes les "anciennes" pages. C'est à faire progressivement pour l'existant.


Liens sur le même sujet :



Publié par
13:16 Lundi
06 Oct. 2014

[Billet publié dans le blog Le blog du ST]

Parmi nos dizaines de milliers d'utilisateurs, une centaine vous fait partager leur expérience. Vous trouverez dans les témoignages un aperçu de leurs réalisations, et leurs réflexions.


Publié par
13:10 Mercredi
17 Sep. 2014

[Billet publié dans le blog Le blog du ST]

Un changement important visant à remplacer tous les certificats de sécurité déployés qui utilisent l'algorithme SHA-1 est amorcé par Google à partir de la version 39 de Chrome qui sera disponible en bêta le 26/9/2014.

En fonction de la date d'expiration des certificats SHA-1, un avertissement de sécurité pourra apparaître :

Il est donc vivement recommandé de vérifier les certificats de vos sites sécurisés afin d'éviter un avertissement pouvant dérouter les Internautes utilisant Chrome.

Liens utiles sur le sujet :

Publié par
09:42 Vendredi
12 Sep. 2014

[Billet publié dans le blog Le blog du ST]

De nouvelles dates sont disponibles pour les formations WINDEV, WEBDEV et WINDEV Mobile.

Retrouvez toutes les dates dans la rubrique formation du site, ainsi que les inscriptions en province, et à Paris sur les Champs-Élysées.
Publié par
09:31 Lundi
08 Sep. 2014

[Billet publié dans le blog Le blog du ST]

Cette possibilité ajoutée au Wlangage en version 19 est sous utilisée : piqûre de rappel ! 

Lorsqu'une variable source de données est déclarée et réservée à un type de données connu lors du développement, il est possible de préciser ce type avec la syntaxe <description=fichier ou requête>.

Cela permet de profiter de la complétion automatique dans l'éditeur de code, afin d'avoir toutes les rubriques proposées lors de l'utilisation de la variable.

Publié par
11:39 Mardi
02 Sep. 2014

[Billet publié dans le blog Le blog du ST]

Les ressources pratiques ont été complétées, et incluent maintenant le TDF Tech 2014 : 
  • support de cours,
  • exemples,
  • vidéo.

Les ressources pratiques permettent un accès direct à toutes les ressources de développement : 


Publié par
13:41 Jeudi
24 Juil. 2014

[Billet publié dans le blog Le blog du ST]

Comme le précise l'aide de la présentation du GDS : 

Les sources de vos applications sont primordiales.
Ces sources doivent être traitées avec l'attention qu'elles méritent !

Comme les données des applications déployées, les codes sources des projets développés sont on ne peut plus précieux ! Cela semble évident, mais pourtant au quotidien il n'est pas rare pour notre support de découvrir des bases GDS simplement en partage sur un OS inadapté et/ou une machine sous dimensionnée sans protection de son alimentation...

J'ai complété dans l'aide les conseils qui s'appliquent au serveur qui héberge les sources, voici un rappel (non exhaustif) : 
  • Utilisez un serveur dédié avec un disque de taille confortable (au moins 200 Go). 
  • Utilisez le Gestionnaire de Sources (GDS) en mode Client/Serveur, en utilisant une version du moteur au moins égale à celle de l'environnement.
  • Les outils de l'administrateur du GDS permettent de convertir une base GDS au format HFSQL Classic en base HFSQL Client/Serveur. 
  • Les disques durs peuvent avoir des problèmes physiques : utilisez si possible un système RAID I sur votre serveur (plusieurs disques stockant les mêmes informations en double). 
  • Protégez l'alimentation de votre serveur par un onduleur. 
  • Faites des sauvegardes régulières de la base de sources. 
  • Placez le serveur dans une zone "sécurisée", en utilisant un firewall. 
  • Lorsque la base est dans un CLOUD : 
    - vérifiez avec son administrateur que les connexions TCP sont permanentes (c'est le cas pour les plateformes de développement de PCSCLOUD). Même si le GDS se reconnecte automatiquement, pour votre confort, il ne doit pas y avoir une coupure automatique des connexions TCP toutes les minutes par exemple. 
    - en cas de déconnexions fréquentes (alors que les connexions TCP sont permanentes), réduisez la taille des paquets dans les outils de l'administrateur du GDS.
  • Vérifiez que la copie locale des sources ne peut pas être manipulée par des processus externes (antivirus, sauvegarde automatique...) pendant le développement. 
  • Préférez l'utilisation du mode "Gérer automatiquement l'extraction du projet" lorsque les modifications de plusieurs développeurs portent sur le projet (code projet, liste des éléments...).

Bien sûr toutes les recommandations de sécurité données pour le moteur HFSQL Client/Serveur s'appliquent intégralement, et constituent un bon point de départ ...


Publié par
10:00 Jeudi
03 Juil. 2014

[Billet publié dans le blog Le blog du ST]

L'impression physique d'un état et son aperçu sont des processus dépendants : 
  • des API de Windows qui peuvent donc présenter des variantes d'une version à l'autre,
  • du pilote de l'imprimante et de son adéquation avec l'imprimante utilisée, 
  • du mode de compilation 32 ou 64 bits,
  • des processus lancés en parallèle sur la station qui imprime...
Combiné au fait que chaque état a ses propres particularités en fonction de la disposition et du type de ses champs, et de ses blocs, chaque impression devient pratiquement un cas d'utilisation unique.

Dans la majeure partie des cas, cela n'a aucune incidence et une même édition donne toujours le même résultat. Mais, en fonction d'un état et/ou d'un pilote et/ou d'une version de Windows, un comportement inattendu peut survenir, c'est "l'exception qui va confirmer la règle" :
  • un rendu inattendu : espacement trop important de caractères, ou à l'inverse superposition, 
  • message "l'état est trop large..."
  • une instabilité : processus figé "pas de réponse", processus arrêté sans message, RAM occupée par le processus ou dans le spool de Windows plus importante que sur d'autres stations ... 
Le processus d'impression repose sur les api de Windows, qui vont s'appuyer sur le pilote de l'imprimante, la conduite à tenir en cas de difficulté consiste donc à suspecter en tout premier lieu le pilote de l'imprimante ! En effet, généralement une simple mise à jour du pilote à partir du site de son fabricant, ou parfois à l'inverse l'utilisation d'un pilote générique, supprime le défaut.

Lorsque ça n'est pas le cas, voici les actions pouvant être tentées au niveau de l'état en question. Sachant que la plupart des difficultés sont liées à la consommation mémoire, surtout si la compilation est en 32 bits car dans ce cas le système limite les possibilités d'allocation, elles visent principalement à réduire la consommation :

  • recompiler l'application avec la version 19 s'il s'agit d'une version antérieure, l'occupation mémoire étant moindre (nouveauté 75).
  • appeler la fonction iRAZ avant le lancement de l'édition.
  • augmenter sensiblement les marges de l'état si elles sont très proches des marges physiques de l'imprimante.
  • éviter de stocker tout le document à imprimer dans le spool de Windows. Cocher pour cela dans le volet "Options" de la description de l'état, l'option "Envoyer chaque page séparément à l'imprimante" 

  • supprimer la transparence des images, si elle n'est pas utilisée. En effet à partir de la version 19 (nouveauté 73) la transparence est gérée ce qui peut avec certains pilotes augmenter la taille du travail d'impression dans le spool. Il suffit pour cela d'intervenir sur la description des images, volet "Style", afin de remplacer la transparence demandée dans la couleur de fond : 

  • si la non conformité concerne la mise en forme de données en RTF, inverser l'utilisation faite de l'option iRTFAvecImagesEtTableaux de la fonction iParamètre (l'avoir en paramètre des réglages des applications peut être un plus). 
  • si des caractères se superposent, effectuer une recherche sur le site de Microsoft avec le nom de la polices de caractères. Des effets sont parfois spécifiques à certaines polices, et nécessitent la mise en place de contournement spécifiques. L'appel suivant avant l'état peut apporter une solution : iParamètre("PLACEMENTCARACTERE=VRAI")
  • dans le cas d'une imprimante relativement lente, ralentir l'envoi de l'impression par une temporisation de quelques secondes, après impression du bas de page, toutes les 10 pages par exemple. Idéalement le délai de temporisation sera paramétrable via les options de configurations de l'application. Cela permet une adaptation en situation en fonction des périphériques rencontrés, dans tous les cas où le matériel n'est pas connu à l'avance.
  • dans un contexte TSE limiter les sollicitations graphiques notamment s'il y a des restrictions dans les ressources de chaque utilisateur :
    SI EnModeTSE() ALORS FenDésactiveEffet(effetAnimation + effetCadreTranslucide + effetGFI + effetHalo)
  • la prévention d'exécution des données peut également impacter les processus d'impression.
  • ...

_________________________________

Si aucune solution ne s'applique, et qu'il ne s'agit pas d'une imprimante pour laquelle le fabricant ne propose plus de pilote, n'hésitez pas à soumettre le cas à notre support. Il suffit de formuler une demande par le menu "Aide" du volet "Accueil" de WINDEV. La demande doit nécessairement contenir :
  • détail du cas de figure (copie message, symptôme, configuration système, défaut en aperçu ou en impression physique ou les deux...),
  • constat au niveau de l'occupation mémoire du processus, et de l'impression dans le spool de Windows, 
  • lien permettant d'obtenir le pilote d'imprimante concerné, 
  • lien vers un serveur web ou ftp permettant de télécharger une archive zip contenant : 
  • un projet de test, 
  • une fenêtre commentée lançant le traitement d'édition (libellés explicatifs "cliquez ici, "observez que"...) 
  • l'état en question lancé par la fenêtre, 
  • si l'état ne peut pas être adapté pour imprimer des données statiques, "en dur", ajouter :  
  • l'analyse (dossier \NomAnalyse.wdx\ ou \NomAnalyse.ana\ sans ses sous-dossiers) 
  • un jeu de données *.FIC permettant l'exécution dans le cas d'une base HFSQL , un script SQL (fichier texte avec Create table et Insert) dans le cas d'une autre base.