Quantcast
Channel: PC SOFT - Blogs
Viewing all 1435 articles
Browse latest View live

La version 19 de WINDEV, WEBDEV et WINDEV MOBILE est annoncée


TOUR DE FRANCE DES VERSIONS 19 DE WINDEV, WEBDEV ET WINDEV MOBILE

$
0
0

Les inscriptions sont ouvertes pour le TDF des versions 19 :

Réservez rapidement vos places dans l'une des 11 étapes :
  • MONTPELLIER, mardi 5 nov.
  • TOULOUSE, mardi 12 nov.
  • BORDEAUX, mercredi 13 nov.
  • NANTES, jeudi 14 nov.
  • PARIS, mardi 19 nov.
  • LILLE, mercredi 20 nov.
  • BRUXELLES, jeudi 21 nov. 
  • STRASBOURG, mardi 26 nov. 
  • GENEVE, mercredi 27 nov. 
  • LYON, jeudi 28 nov. 
  • MARSEILLE, mardi 3 déc. 


iOS : Comment exclure des fichiers de données de la sauvegarde automatique iCloud ?

$
0
0
Par défaut, les fichiers accessibles en écriture de vos applications iOS sont sauvegardés dans iCloud, le Cloud d'Apple. La taille de la sauvegarde disponible pour toutes les applications, les photos, les contacts dans iCloud est de 5 Go. Au-delà, il est nécessaire pour l'utilisateur de payer un abonnement iCloud.

Il peut être donc nécessaire pour vos clients de choisir de ne pas sauvegarder les données de l'application dans iCloud. Egalement lorsque vous déployez un fichier de données avec le bundle de l'application, si ce fichier n'est pas en lecture seule, Apple peut estimer que le fichier est trop important par rapport à l'application et sa sauvegarde et refuser l'application.

Pour indiquer à iOS que le fichier ne devra pas être sauvegardé sur iCloud, il est nécessaire d'utiliser la méthode suivante : 

Créez une procédure globale et cliquez sur WL pour la convertir en Objectiv-c. Copiez ensuite le code ci-dessous dans la procédure : 


#import <Foundation/NSURL.h>
bool bExclureFichierDuBackup(NSString* pczFichier, bool bExclu)
{
NSURL *pczURL = [NSURL fileURLWithPath:pczFichier];
NSError *error = nil;
bool success = [pczURL setResourceValue: [NSNumber numberWithBool: bExclu] forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success)
{
NSLog(@"Error excluding %@ from backup %@", [pczURL lastPathComponent], error);
}
return success;
}

Dans le code d'initialisation de votre projet ou sur le clic sur un bouton, utilisez le code WLangage suivant : 

// Pour Exclure le fichier de la sauvegarde iCloud
SI PASbExclureFichierDuBackup(fRepDonnées()+[fSep]+"client.fic",Vrai)ALORSErreur("Fichier non exclu.")

// Pour Inclure le fichierà la sauvegarde iCloud
SI PASbExclureFichierDuBackup(fRepDonnées()+[fSep]+"client.fic",Faux)ALORSErreur("Fichier non exclu.")


Attention, ce code ne s'applique qu'aux périphériques utilisant iOS 5.1 minimum. 

GDS – synthèse sur les réglages proposés pour adapter son usage à ses habitudes et/ou contrainte de configuration

$
0
0
Le GDS - Gestionnaire de sources de WINDEV, WEBDEV et WINDEV Mobile propose différents réglages permettant d'adapter son comportement à tous les besoins. Voici un condensé de l'ensemble des réglages proposés, et leur localisation.

Dans la description du projet :
Accessible par le volet "Projet" du ruban, elle contient un volet "GDS" regroupant toutes les options du GDS qui se rapportent au projet lui-même :
  • récupération de la dernière version des éléments à chaque ouverture ou non, 
  • réintégration proposée en fermeture, 
  • réintégration lors des actions de génération des exécutables, composants... 
  • extraction automatique du projet. 

Dans les options du GDS : 
Accessibles par le volet "Accueil" du ruban, et le choix "Options du gestionnaire de sources" du bouton "Options", ces options permettent de :
  • gérer les dialogues affichés par le GDS, 
  • coupler le GDS à la messagerie instantanée des centres de contrôle, 
  • fixer le dossier par défaut des branches, 
  • régler la réindexation et la taille des trames dans le cas d'un accès à une base distante. 
Ces options sont propres à l'ensemble de l'environnement, et s'appliquent donc à tous les projets. Elle sont également accessibles par le menu "Outils ... Options" de l'administrateur du gestionnaire de sources (WDGDSAdmin.exe).

Dans les options de WINDEV, WEBDEV ou WINDEV Mobile :
Accessibles par le volet "Accueil" du ruban, et le choix "Options générales de WINDEV" du bouton "Options", les options de WINDEV contiennent un volet "Général" avec également un réglage du GDS. Il permet de choisir une extraction automatique des éléments dès le passage en modification dans l'IHM ou un traitement :


Cette option est propre à l'ensemble de l'environnement, et s'applique donc à tous les projets.

Dans le volet GDS du ruban :
La flèche du bouton "Gérer" du ruban permet de configurer la politique de réintégration :
  • règles à respecter afin d'autoriser une réintégration dans la base de sources (aucune erreur, commentaire,...),
  • niveau de tests automatiques requis,
  • pourcentage de commentaires requis.



Je profite de ce billet pour rappeler :
  • que le GDS n'est absolument pas réservé au travail en équipe. Les gestions de l'historique, des branches, des sauvegardes (...) qu'il propose sont incontournables même pour des projets pris en charge par un développeur unique.
  • qu'il est à chaque instant possible de retrouver immédiatement une option des éditeurs de WINDEV, WEBDEV et WINDEV Mobile, grâce au raccourci Ctrl+Alt+espace. Par exemple je ne sais plus où se trouve le réglage de la politique de réintégration : Ctrl+Alt+Espace puis frappe de "poli" >> l'option est trouvée dans le volet du ruban correspondant.

Dans un site web combinant des pages dynamiques en mode AWP, et une partie dynamique avec contexte, utiliser la personnalisation de la page d'erreur pour affiner la navigation...

$
0
0
La navigation dans un site web généré par WEBDEV peut être interrompue pour diverses raisons en fonction des actions de l'utilisateur. Un des cas le plus courant, l'utilisateur abandonne son poste en pleine saisie dans une partie dynamique du site, avec contexte, à son retour il sera notifié d'un dépassement de délai : ERR_DISCONNECTED_TIMEOUT 
Une page standard du serveur d'application de WEBDEV se charge de remonter à l'internaute tous les cas d'erreur qui peuvent survenir. Cette page par défaut relance le site à partir de sa première page dynamique. Cependant, dans le cas courant d'un site ayant :
  • une première partie avec des pages en mode awp sans contexte (navigation dans un catalogue de produits avec référencement),
  • puis d'autres parties en dynamique avec contexte (validation d'un panier avec paiement) ... 
"l'expérience utilisateur" ne sera pas des plus agréables pour l'internaute si après un timeout ou une autre erreur il se retrouve à un point du site (première page dynamique) qui ne lui donne aucune explication.

De façon moins littéraire, le cheminement de l'utilisateur serait :
  • accès au site via son domaine www.mon 
  • arrivée sur une page ./page_index.awp
  • navigation dans des pages ./page_produit ???.awp
  • passage en validation d'une commande : une page awp fait un appel de la fonction SiteDynamiqueAffiche afin de passer dans la partie dynamique avec contexte du site (ou même d'un autre site pourquoi pas),
  • une erreur survient durant la validation (timeout...)

Lorsque cet enchaînement se produit, l'internaute est renvoyé par défaut sur la première page dynamique obtenue précédemment avec SiteDynamiqueAffiche, et non pas sur les pages en mode awp qui précédaient. Pourtant dans ce cas c'est généralement dans ces pages que l'utilisateur devra repasser pour vérifier ses choix, et relancer si besoin la partie dynamique en connaissance de cause.

Voici la marche à suivre pour modifier ce comportement par défaut, afin de rediriger la navigation après une erreur dans la partie dynamique :
  • créer une nouvelle page dans le site,
  • ouvrir la nouvelle page  
  • dans l'assistant sélectionner une "Page d'erreur", 
  • enregistrer la nouvelle page (elle sera automatiquement référencée comme page d'erreur dans la description du projet)
  • ces étapes sont illustrées dans la page d'aide "Page spécifique pour afficher les erreurs du site
  • appliquer le gabarit du site à la page (c'est un autre avantage de cette solution, les cas d'erreurs s'intègrent pour éviter de dérouter l'utilisateur)
  • ajouter dans le code navigateur onload de la page le code suivant : 

    gnTimerest un entier
    gnTimer=Timer("Redirection",300) 
  • créer une procédure locale navigateur nommée "Redirection" avec le code : 

    Procedure Redirection()

    FinTimer(gnTimer)
    PageAffiche("FR/page_index.awp")

Dans cet exemple un timer permet de laisser apparaître la page d'erreur chargée de la redirection, il est cependant possible de la masquer en totalité en effectuant la redirection (PageAffiche) directement dans le code navigateur onload de la page.

D'autre part l'exemple propose de renvoyer l'utilisateur sur la page d'index du départ, il est tout à fait envisageable de rediriger sur une autre page spécifique, un autre site, il n'y a pas de contrainte.

Nouvelle version 8.1 de Windows : mise à jour des pilotes Safenet/Hasp requise !

$
0
0
La mise à jour de Windows 8 à 8.1 mise en ligne dans Windows Store le 17/10/2018 ne peut pas être appliquée sur une configuration disposant de pilotes Safenet dans une version antérieure à la 6.60.  La détection d'une version plus ancienne bloque la mise à jour en demandant la désinstallation de "Sentinel Runtime Drivers" :


Afin de permettre la mise à jour de Windows, il suffit donc au préalable d'effectuer la mise à jour du pilote Safenet :

La LST 94 est disponible !

$
0
0

La LST 94 est disponible, les envois pour la France ont débuté le 23 octobre (courrier "Fréquence"), livraisons prévues semaines 43 et 44. DOM-TOM et Etranger, les envois seront faits le 29 octobre en "Courrier Postal Prioritaire", livraisons prévues semaines 44 et 45 selon les destinations.

Au programme ...
  • METTRE EN PLACE UN INTERRUPTEUR VISUEL ET ANIMÉ (WINDEV)  
  • C'EST DÉCIDÉ, JE DÉPORTE MES TRAITEMENTS “MÉTIER” DANS UN WEBSERVICE ! 
  • VOICI POURQUOI ET COMMENT... (WINDEV, WEBDEV, WINDEV Mobile)  
  • GABARITS ET AMBIANCE BUSINESS (WINDEV, WEBDEV, WINDEV Mobile) 
  • NOUVELLE AMBIANCE POUR VOS SITES (WEBDEV)  
  • APPLIQUER UN TRI MULTICRITÈRE SUR UNE TABLE (WINDEV)  
  • NOUVEAU GABARIT POUR VOS APPLICATIONS MOBILES (WINDEV Mobile) 
  • UTILITAIRE : SAUVEGARDER ET RÉCUPÉRER EN LOCAL UNE BASE DE DONNÉES HFSQL DISTANTE (WINDEV, WEBDEV, WINDEV Mobile)  
  • CAPTCHA CODE : UN PETIT CALCUL ? (WEBDEV)  
  • ZONE RÉPÉTÉE : LA RUPTURE EN COURS TOUJOURS VISIBLE (WEBDEV)  
  • RÉALISER UN SITE QUI PERMET LE CHANGEMENT D'AMBIANCES ET / OU DE PALETTES (WEBDEV)  
  • IPHONE, IPAD, ANDROID : INSTALLER DES FICHIERS DE DONNÉS ET LES “MAINTENIR À JOUR” 3... 2...1... CODEZ ! (WINDEV Mobile)  
  • ANDROID : DÉVELOPPER UN WIDGET (WINDEV Mobile)  
  • MODIFIER OU RÉINITIALISER LES PARAMÈTRES ET LES VALEURS MÉMORISÉES D'UNE APPLICATION (WINDEV)
  • 5.000 OU 50.000 POSTES EN LIVE UPDATE...  COMMENT JE M'ORGANISE ? (WINDEV)  
  • COMPOSANT INTERNE “HFSQLVIEWER” : UN “WDMAP LITE” DANS VOS APPLICATIONS (WINDEV)  
  • CRÉER ET ACCÉDER À UNE BASE DE DONNÉES DE PCSCLOUD (WINDEV, WEBDEV, WINDEV Mobile)  
  • 2014 : LA FIN DU RIB PASSEZ À LA NORME “SEPA” (WINDEV)  
  • RESTAURER OU RECOPIER DES MAPPAGES RÉSEAU (WINDEV)  
  • AJOUTER DES OPTIONS DANS LE MENU CONTEXTUEL DE WINDOWS (WINDEV)  
  • OUVRIR UNE MESSAGERIE EMAIL AVEC UN EMAIL “PRÊT À L'ENVOI” (WINDEV)  
  • SITE INTERNET DEPUIS UN MOBILE : PROPOSER L'APPLICATION NATIVE (WEBDEV, WINDEV Mobile)  
  • IPHONE, IPAD : AU SECOURS, LE TRAITEMENT D'AFFICHAGE DE LIGNE DU CHAMP ZONE RÉPÉTÉE A DISPARU! (WINDEV Mobile)  
  • DÉPLOYER UNE APPLICATION WINDEV Mobile 18 SUR IOS 7 (WINDEV Mobile)  
  • QUESTIONS & RÉPONSES (WINDEV, WEBDEV, WINDEV Mobile) 
  • LE SAVIEZ-VOUS ? (WINDEV, WEBDEV, WINDEV Mobile) 
  • TRUCS & ASTUCES (WINDEV, WEBDEV, WINDEV Mobile)

Comment expliquer une différence de résultat entre le test "Go" d'une page PHP depuis l'éditeur de WEBDEV, et le site déployé à partir du même projet ?

$
0
0
Un site PHP par définition a ses pages HTML qui sont créées dynamiquement par le moteur PHP installé :  
  • sur le poste de développeur dans le cas d'un test depuis WEBDEV,
  • sur le serveur dans le cas du site déployé.

Une différence de résultat entre un site PHP en test, et le même site après son déploiement, peut donc provenir :
  • d'une différence de version et/ou de configuration du moteur PHP : il faut vérifier les moteurs PHP utilisés par exemple avec l'appel de la fonction "PHPInfo" dans une page d'administration :


  • d'une différence de format des pages PHP : il faut vérifier que le transfert du site sur le serveur qui l'héberge se fait avec un FTP en mode binaire et non pas un FTP en mode ascii (cf. exemple des images donné dans les FAQ).
  • d'un test depuis l'éditeur fait non pas en PHP mais en mode AWP pour le débogage : il faut décocher l'option "Débogueur le projet PHP en mode simulation", du bouton "Mode test", du volet "Projet" du ruban de WEBDEV.



Énumérer / vérifier les dépendances d'une application : DLL, composants.

$
0
0
Ce billet rejoint un thème déjà abordé dans le blog, et revenant régulièrement à notre support : pourquoi la même application peut donner le résultat attendu sur 20 postes, mais sur le 21ième une différence apparaît (effet d'affichage, formatage de donnée, communication avec un périphérique, échange avec une base tierce, un webservice ...).

Dans ce cas bien sûr il faut orienter les recherches sur la configuration elle-même, et non pas sur l'application. Il ne faudrait pas inverser la tendance en modifiant l'application à la hâte, et se retrouver avec le bon résultat sur 1 poste, et non pas sur les 20...

Pour le cas des accès aux bases de données, c'est majoritairement une erreur sur la version du client de la base de données qui peut provoquer des différences (cf. Accès aux bases de données Client/Serveur, attention à la version du client). Et dans la quasi totalité des cas,une différence dans les dépendances de l'application sera à l'origine des complications.

Voici donc un bout de code que je conseille vivement de placer dans les applications, suivant le cas avec une option "avancée", ou une option d'administration, ou un raccourci caché. Il permet d'obtenir une liste complètes avec emplacements et versions des :
  • DLL du framework WINDEV,
  • DLL de Windows qui sont instanciées par l'application,
  • DLL des éventuels clients des bases de données utilisées,
  • composants externes.
Par comparaison entre un poste sain et une configuration récalcitrante, il devient ainsi immédiatement possible de repérer les différences : un client base de données trop ancien, un composant qui n'a pas été mis à jour, un framework chargé qui n'est pas celui pour lequel l'application est prévue...

 strFramework est une structure
 sExtension est une chaîne
 sModule est une chaîne
 sRépertoire est une chaîne
 sVersion est une chaîne
 sVI est une chaîne
 sInfo est une Buffer
FIN

TabDépendance est un tableau de strFramework
UnElement est un strFramework

sListeProcessus est une chaîne
nPID est un entier
sAppli est une chaîne

sDLLInfo est une chaîne
sDLLListe est une chaîne
sNomDLL est une chaîne
sInfoElement est une chaîne= [
Copyright : %1
Description : %2
Mode : %3
Société : %4
VI : %5
Commentaires : %6
]

// Recherche du PID du programme en cours ...
sListeProcessus =ExeListeProcessus(exePID,exeNomCourt)
POUR TOUTE CHAINEsProcessus DE sListeProcessus SEPAREE PARRC
 nPID =ExtraitChaîne(sProcessus,1,TAB)
 sAppli =ExtraitChaîne(sProcessus,2,TAB)
 SIsAppli ~= (EnModeTest() ?"WDTST.EXE"SINONProjetInfo(piNomEXE))ALORS SORTIR
FIN

// Récupération des DLL pour le PID trouvé ...
sDLLListe =ExeListeDLL(nPID)
POUR TOUTE CHAINEsDLL DE sDLLListe SEPAREE PARRC
 
 sNomDLL =Majuscule(fExtraitChemin(sDLL,fFichier+fExtension))
 
 sDLLInfo += [RC] +sNomDLL +" "+ExeInfo(exeVersion,sDLL)
 UnElement.sExtension =fExtraitChemin(sDLL,fExtension)
 UnElement.sModule =sNomDLL
 UnElement.sVersion =ExeInfo(exeVersion,sDLL)
 UnElement.sVI =ExeInfo("VersionVI",sDLL)
 UnElement.sRépertoire =fExtraitChemin(sDLL,fDisque+fRépertoire)
 UnElement.sInfo =ChaîneConstruit(sInfoElement,ExeInfo(exeCopyright,sDLL),ExeInfo(exeDescription,sDLL),
 ExeInfo(exeMode,sDLL),ExeInfo(exeSociété,sDLL),
 ExeInfo("VersionVI",sDLL),ExeInfo("Commentaires",sDLL))
 
 TableauAjoute(TabDépendance, UnElement)
 
FIN

// Récupération de la liste des composants utilisés par l'application...
sComposantNom,sComposantChemin,sComposantRépertoire sont des chaînes
POUR TOUTE CHAINEsUnComposant DE ComposantListe() SEPAREE PARRC
 sComposantNom =ExtraitChaîne(sUnComposant,1,TAB)
 sComposantChemin =ExtraitChaîne(sUnComposant,2,TAB)
 sComposantRépertoire =fExtraitChemin(sComposantChemin,fDisque+fRépertoire)
 UnElement.sModule =sComposantNom
 UnElement.sRépertoire =sComposantRépertoire
 UnElement.sVersion =ComposantInfo(sComposantNom,ciVersion,sComposantRépertoire)
 UnElement.sVI =ComposantInfo(sComposantNom,ciVersionInterne,sComposantRépertoire)
 UnElement.sInfo =ChaîneConstruit("Société émettrice : %1", ...
 ComposantInfo(sComposantNom,ciSociété,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciCopyright,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciLibellé,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciVersion,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciVersionCompatible,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciVersionInterne,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciVersionProjet,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciNuméroPatch,sComposantRépertoire),
 ComposantInfo(sComposantNom,ciNomPhysique,sComposantRépertoire),"")
 TableauAjoute(TabDépendance, UnElement)
FIN


// Visualisation du tableau dans une trace pour l'exemple
// le plus simple est de déclarer en global le tableau TabDépendance
// afin de le visualiser directement dans un champ table par databinding
POUR TOUT ELEMENT UnElement DE TabDépendance
 Trace(UnElement.sModule+"//"+UnElement.sVersion)
FIN


Le code est autonome et peut être directement copié/collé dans un bouton par exemple.

Version R22.3 du SDK Android proposée par Google pour la création des applications Android : mise à jour nécessaire du manifeste pour le champ carte.

$
0
0
L'installation du SDK Android sur un nouveau poste de développement WINDEV Mobile, ou la mise à jour d'un poste, va installer la version R22.3 du SDK. Par rapport à la version R22 du SDK, Google demande de nouvelles informations dans le manifeste des applications qui doivent afficher une carte.  

Les modifications à apporter au manifeste sont détaillées dans la FAQ suivante :

Sans ces modifications, une simple recompilation de l'application même sans modification provoque une erreur "The meta-dat tag ... not have the right value" dès l'affichage d'une fenêtre contenant un champ carte.

Arrêt du support de Windows XP le 8 avril 2014

$
0
0
Sujet déjà évoqué dans un précédent billet, le support de Windows XP va être arrêté par son éditeur. On peut lire sur son site :  

[...]
[...]

Bien évidemment toutes les applications et les stations sous XP vont rester opérationnelles après cette date fatidique. Cependant comme le conseille l'éditeur, si des applications n'ont pas encore été adaptées afin de prendre en compte les spécificités des systèmes actuels, UAC notamment, il est vivement recommandé de planifier les actions nécessaires rapidement.

Il est très important également de prendre en compte le fait que la sécurité de ces stations ne sera plus assurée. Dans l'actualité sur ce thème : 
 

Comment adapter la résolution des images utilisées dans une application WINDEV Mobile pour Android, en fonction de la résolution du périphérique pour un meilleur rendu ?

$
0
0
Les périphériques sous Android disposent d'écrans définis par une hauteur, une largeur, mais également un certains nombres de DPI (dots per inch). Au plus le nombre de DPI de l'écran est important (150, 240, 320...), au plus le périphérique pourra afficher des images de bonne qualité. 

Lorsqu'une application utilise de nombreuses images, ou nécessite un rendu précis tirant pleinement profit du matériel, il possible de fournir différentes versions des images, avec différentes qualités.

Aucune programmation spécifique n'est requise pour parvenir à ce résultat. En effet, toute image utilisée traditionnellement dans l'application :
  • directement dans la description des champs (fenêtre "7 onglets"),
  • ou par programmation dans le cas d'images changées dynamiquement à l'exécution :
    <Nom_Champ_Image> = <ImageTest.png>
    ZoneRépétéeAjouteLigne(ZR_avecImages,"Numligne="+i, <ImageTest.png>) 
    ...
pourra lors de l'exécution être substituée par une version de meilleure qualité, choisie automatiquement en fonction de la résolution du périphérique.

Les images de différentes qualités peuvent être incluses à la génération de l'application WINDEV Mobile pour Android. Par exemple pour un champ image affichant l'image <ImageTest.png>, il sera possible de donner plusieurs images nommées <ImageTest.png> :
  • lancer la génération de l'application Android,
  • étape "Intégration de fichiers",
  • cliquer sur ajouter afin d'inclure dans l'application les images de différentes qualités,
  • sélectionner dans la combo "Destination APK" un type adapté drawable-hdpi, drawable-mdpi, drawable-xhdpi, ou personnalisé avec "drawable-xxhdpi" pour les densités supérieures à 480 DPI, voir "drawable-xxxhdpi" pour les densités supérieures à 640 DPI. 

Le lien suivant détaille ce mécanisme, un tableau montre notamment les types (hdpi, xhdpi...) utilisés en fonction de la résolution du DPI des périphériques :


Pré-Versions 19 de WINDEV, WEBDEV et WINDEV Mobile disponibles !

Recherche d'une commande dans le ruban des éditeurs de WINDEV, WEBDEV et WINDEV Mobile, ajouter Ctrl+Alt+Espace dans ses réflexes de développement !

$
0
0
Le ruban des éditeurs de WINDEV, WEBDEV et WINDEV Mobile permet depuis la version 18 un accès immédiat aux fonctionnalités. En cas de doute sur l'emplacement d'une possibilité, ou d'une nouveauté, ou pour situer où se trouve une option, prenez le réflexe d'utiliser la loupe de recherche du ruban ! 
Elle est accessible :
  • par un clic en haut à droite de tous les éditeurs,


  • par le raccourci Ctrl+Alt+Espace+<ce que l'on cherche> !

C'est un réflexe à prendre qui permet de ne jamais perdre de temps pour rechercher une action. Au passage, il n'est pas rare que la recherche permette de voir des fonctionnalités inconnues ou oubliées !

Par exemple pour rechercher la création de la nouveauté diagramme de Gantt sous WINDEV 19 lorsque l'on vient de l'installer : ctrl+alt+espace+gantt>> l'option est immédiatement mise en évidence :


Intégration d'achats In-App dans les applications Android et iOS, mise en ligne de la documentation

$
0
0
L'intégration d'achats In-App dans les applications WINDEV Mobile pour Android et iOS a été mise à disposition dès la Pré-Version de WINDEV Mobile 19. Par contre la documentation complète n'a pas été immédiatement mise en ligne, c'est maintenant chose faite ! 
Voici le lien vers la description de la fonctionnalité complète : Achats In-App 

Et les liens vers les différentes fonctions :
  • inAppAchèteProduit : Envoie une demande d'achat d'un produit "In-App" associé à l'application. 
  • InAppRestaureAchats : Restaure les achats précédemment effectués par l'utilisateur dans une application iOS. 
  • InAppConsommeProduit : Permet de consommer dans une application un produit précédemment acheté par l'utilisateur. 
  • InAppListeAchat : Renvoie la liste des produits de l'application achetés par l'utilisateur et non consommés. 
  • InAppListeInfoProduit : Récupère à partir du store les informations sur les produits "In-App" associés à l'application. 


Les fonctions WLangage permettant de manipuler des périphériques DLNA / UPnP ont été mises en ligne

$
0
0
Les fonctions WLangage permettant de manipuler des périphériques UPnP / DLNA (Digital Living Network Alliance) depuis WINDEV 19 et WINDEV Mobile 19 ont été ajoutées à l'aide en ligne.


  • UPNPCherchePériphérique : Recherche un périphérique à partir de son nom unique (UDN). 
  • UPNPExécuteAction : Exécute une action sur le service UPnP. 
  • UPNPListePériphérique : Liste les périphériques UPnP disponibles sur le réseau. 
  • UPNPMédiaArrêt : Arrête la lecture du média en cours sur le périphérique UPnP. 
  • UPNPMédiaJoue : Lance la lecture du média en cours sur le périphérique UPnP. 
  • UPNPMédiaOuvre : Ouvre un média sur le périphérique UPnP. 
  • UPNPMédiaPause : Met en pause la lecture du média en cours sur le périphérique UPnP. 
  • UPNPModifieContraste : Modifie le contraste d'un périphérique UPNP. 
  • UPNPModifieLuminosité : Modifie la luminosité d'un périphérique UPnP. 
  • UPNPModifieMuet : Modifier l'état 'Muet' d'un périphérique UPnP. 
  • UPNPModifieNetteté : Modifie la netteté d'un périphérique UPnP. 
  • UPNPModifieVolume : Modifie le volume d'un périphérique UPnP. 
  • UPNPRécupèreContraste : Récupère le contraste d'un périphérique UPnP. 
  • UPNPRécupèreLuminosité : Récupère la luminosité d'un périphérique UPnP. 
  • UPNPRécupèreMuet : Récupère l'état 'Muet' d'un périphérique UPnP. 
  • UPNPRécupèreNetteté : Récupère la netteté d'un périphérique UPnP. 
  • UPNPRécupèreVolume : Récupère le volume d'un périphérique UPnP.

Index de l'aide de l'ensemble des fonctions : Fonctions DLNA / UPnP

Les versions finales de WINDEV, WEBDEV et WINDEV Mobile 19 sont disponibles

Les dernières mises en ligne dans la documentation des versions 19 …

Bonnes fêtes, bons développements !

$
0
0

Toute l'équipe du Support Technique Gratuit vous souhaite de bonnes fêtes de fin d'année, et d'excellents développements pour 2014 avec les versions 19 de WINDEV, WEBDEV et WINDEV Mobile !

Accès à une base tierce depuis une application iOS / Android, mise en ligne de la documentation

$
0
0
L'accès à une base tierce (Oracle, SQL Server, MySQL...) depuis une application pour iOS ou Android est possible en s'appuyant sur un Webservice servant de "passerelle".
Si jusqu'en version 18 le développement de ce webservice était à la charge du développeur, la version 19 apporte une solution intégrée (nouveauté 460). Cette nouveauté disponible dès la sortie de WINDEV Mobile 19 n'avait pas encore été incluse dans la documentation complète, c'est maintenant chose faite ! 
Viewing all 1435 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>