Dedicace
Je tiens a exprimer ma sincère reconnaissance` a mon encadrant professionnel pour son soutien
précieux´ et ses conseils avises tout au long de mon stage chez Abs Computer. Son expertise et son
accompagnement´ m’ont permis d’approfondir mes connaissances et de progresser dans la réalisation de
ce projet.´
Je remercie egalement l’´ equipe d’Abs Computer pour m’avoir offert l’opportunit´ e de r´ ealiser
ce stage´ et de mettre en pratique mes competences en d´ eveloppement avec WinDev et WebDev. Leur
soutien et´ l’environnement de travail stimulant ont et´ e des atouts majeurs dans l’accomplissement de
ce projet.´
Je dedie´ egalement ce travail´ a ma famille, pour leur soutien constant, leur amour et leurs
encourage-` ments. Ils ont toujours et´ e l´ a pour m’inspirer et me donner la force n` ecessaire dans les
moments de doute.´
Enfin, je me dedie´a moi-m` eme, pour l’engagement et la persˆ ev´ erance dont j’ai fait preuve
tout au long´ de ce parcours, et pour la satisfaction d’avoir mene´ a bien ce projet.`
[Yasmin karray]
Abstract
Ce rapport de stage presente le travail effectu´ e durant mon stage chez Abs Computer, o´ u j’ai
principale-` ment travaille avec WinDev et WebDev, des outils de d´ eveloppement pour cr´ eer des
applications robustes,´ tant pour les postes de travail que pour le web. Le stage s’est concentre sur la
compr´ ehension des fonctionna-´ lites de ces environnements de d´ eveloppement, l’int´ egration de
bases de donn´ ees, et la cr´ eation d’interfaces´ utilisateurs.
Au cours du stage, j’ai effectue des recherches pour me familiariser avec les syntaxes et les
commandes´ necessaires dans WinDev et WebDev, notamment les fonctions de manipulation des donn´
ees telles que´ hlit Recherche(), hajout, et hmodif. J’ai egalement explor´ e les manipulations de tableaux
comme ajoute-´ ligne(val) et table suprime(). Apres avoir acquis une ma` ˆıtrise de ces fonctions de base,
j’ai developp´ e des´ interfaces integrant des boutons pour des op´ erations telles que l’ajout, la
modification et la suppression´ d’enregistrements.
i
En plus des interfaces, j’ai travaille sur l’int´ egration d’API et assur´ e une communication fluide entre
´ les interfaces utilisateurs et les bases de donnees. Le stage a aussi impliqu´ e la gestion de la mise´ a
jour` automatique des donnees, le respect des contraintes, et la g´ en´ eration de fichiers ex´ ecutables
(.exe) pour le´ deploiement des applications.´
Le rapport met egalement en lumi´ ere mon exploration des principes du SaaS et de leur relation
avec` le developpement d’applications web´ evolutives. Tout au long du stage, j’ai rencontr´ e plusieurs
obstacles´ necessitant des comp´ etences en r´ esolution de probl´ emes, en particulier en ce qui
concerne les requ` etes deˆ bases de donnees et la pr´ esentation efficace des donn´ ees.´
A la fin du stage, j’ai acquis des comp` etences pr´ ecieuses en gestion de bases de donn´ ees, en
conception´ d’interfaces et en integration de logiciels. Cette exp´ erience m’a permis de d´ evelopper des
comp´ etences´ techniques et humaines, notamment en collaboration d’equipe, en r´ esolution de probl´
emes et en adaptation` a diff` erents d´ efis dans un environnement professionnel.´
Resum´e´
Ce rapport presente le travail r´ ealis´ e lors de mon stage effectu´ e au sein de la soci´ et´ e Abs
Computer,´ specialis´ ee dans le d´ eveloppement logiciel. Au cours de cette p´ eriode, j’ai eu l’opportunit
´ e de travailler sur´ des projets utilisant les outils de developpement WinDev et WebDev de PC SOFT.
Mon stage avait pour´ objectif de me familiariser avec ces technologies et de participer a la cr` eation
d’applications m´ etier pour´ l’entreprise.
Au debut de mon stage, j’ai effectu´ e des recherches approfondies sur WinDev et WebDev, leurs
fonc-´ tionnalites, et la mani´ ere dont ils peuvent` etre utilisˆ es pour cr´ eer des applications de bureau
et web. J’ai´ egalement´ etudi´ e les concepts relatifs´ a la gestion des bases de donn` ees et´ a l’int`
egration d’API.´
J’ai ensuite participe´ a la cr` eation d’interfaces utilisateur avec des fonctions sp´ ecifiques pour g
´ erer´ les bases de donnees et effectuer des op´ erations CRUD (cr´ eation, lecture, mise´ a jour,
suppression). J’ai` egalement appris´ a utiliser les outils de gestion des tableaux et des boucles pour
automatiser certaines t` aches.ˆ
En parallele, j’ai explor` e le mod´ ele SAAS et son application dans le d` eveloppement d’applications
web,´ en recherchant la maniere de l’int` egrer avec WebDev pour cr´ eer des projets accessibles en
ligne.´
Tout au long du stage, j’ai developp´ e des comp´ etences pratiques, telles que la cr´ eation de fichiers
.exe´ avec WinDev et la gestion dynamique des variables dans les applications. Le stage m’a permis
ii
d’acquerir´ une experience pr´ ecieuse dans le d´ eveloppement logiciel et m’a pr´ epar´ e´ a aborder des
projets complexes` dans le futur.
Table des matieres`
Introduction gen´ erale´ vi
1 Presentation de l’Entreprise´ vii
1.1 Historique et Activites de l’Entreprise´ . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
1.2 Mission et Objectifs d’Abs Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
1.3 Structure et Organisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
2 Objectifs du Stage viii
2.1 Objectifs Academiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .´ viii
2.2 Objectifs Professionnels ................................... viii
3 Outils et Technologies Utilises´ ix
3.1 WinDev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
3.2 WebDev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
3.3 WinDev Mobile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
3.4 Base de Donnees et API´ ................................... ix
4 Description des Taches Rˆ ealis´ ees´ x
4.1 Recherche sur WinDev et WebDev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
4.2 Creation d’Interfaces et Fonctionnalit´ es´ ........................... x
4.3 Recherche sur l’Architecture SAAS ............................. x
4.4 Developpement d’une Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .´ x
5 Problematiques Rencontr´ ees et Solutions Apport´ ees´ xi
6 Bilan et Perspectives xii
6.1 Bilan Personnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
6.2 Perspectives de Developpement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .´ xii
iii
7 Annexes xiv
7.1 Captures d’Ecran de l’Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .´ xiv
7.1.1 Interface dans XAMPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
7.1.2 Interface de gestion pointeuse ............................ xiv
7.2 Bibliotheques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .` xvi
7.2.1 HFSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
7.2.2 WDAPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
7.2.3 WDWeb (pour WebDev) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
7.2.4 WLanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
7.2.5 WDB (Base de Donnees) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .´ xvi
7.2.6 WebService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
7.2.7 SQLAPI ....................................... xvi
7.2.8 Bibliotheques pour l’int` egration des bases de donn´ ees sur XAMPP . . . . . . . . .´ xvi
7.2.9 Bibliotheques pour l’int` egration des API´ ...................... xvii
iv
Table des matieres`
7.2.10 Utilisation dans un projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
v
Introduction gen´ erale´
Le stage effectue au sein de la soci´ et´ e Abs Computer a constitu´ e une´ etape importante dans
mon par-´ cours academique et professionnel. Dans le cadre de ce stage, j’ai eu l’occasion de travailler
sur des outils´ de developpement logiciel avanc´ es, notamment WinDev et WebDev, cr´ e´es par la soci´
et´ e PC SOFT. Ces´ technologies sont largement utilisees dans le d´ eveloppement d’applications de
bureau et web.´
L’objectif principal de mon stage etait d’approfondir mes connaissances dans le domaine du d´
eveloppement´ logiciel en utilisant ces outils pour creer des applications m´ etiers. J’ai ainsi explor´ e des
sujets vari´ es, tels´ que la gestion des bases de donnees, la cr´ eation d’interfaces utilisateur, l’int´ egration
d’API et la mise en´ place de solutions en mode SAAS. Ce stage m’a permis d’acquerir des comp´ etences
pratiques et th´ eoriques´ que je pourrai mettre a profit dans mes futures exp` eriences professionnelles.´
Ce rapport presente de mani´ ere d` etaill´ ee le d´ eroulement de mon stage, les t´ aches rˆ ealis´ ees,
les comp´ etences´ acquises et les solutions apportees aux d´ efis rencontr´ es. Il permet´ egalement de
mettre en´ evidence l’impor-´ tance des outils WinDev et WebDev dans le developpement d’applications
performantes et´ evolutives.´
vi
Chapitre 1 Presentation de l’Entreprise´
1.1 Historique et Activites de l’Entreprise´
Abs Computer a et´ e fond´ ee en [ann´ ee de cr´ eation], et s’est rapidement impos´ ee comme un
acteur ma-´ jeur dans le developpement de logiciels et d’applications pour les entreprises de taille petite´
a moyenne.` L’entreprise propose une gamme variee de services allant du d´ eveloppement
d’applications sur mesure´ a la` creation de solutions cloud adapt´ ees aux besoins des clients´
1.2 Mission et Objectifs d’Abs Computer
L’agriculture, vitale pour l’humanite et l’´ economie, doit surmonter des d´ efis majeurs pour r´
epondre aux´ besoins croissants, notamment dans les pays en developpement. Le changement
climatique, la perte de bio-´ diversite, et les maladies r´ eduisent la productivit´ e, tandis que la
croissance d´ emographique et les p´ enuries´ de main-d’œuvre compliquent davantage la situation.
1.3 Structure et Organisation
Abs Computer est une organisation structuree avec plusieurs d´ epartements : d´ eveloppement,
gestion´ de projet, support technique, et recherche developpement. Chaque d´ epartement joue un r´
ole clˆ e dans la´ realisation des projets et dans l’am´ elioration continue des produits.´
FIGURE 1.1 – Logo de l’entrepriseABS Computer
Chapitre 2 Objectifs du Stage
2.1 Objectifs Académiques´
Le stage visait a appliquer les connaissances acquises lors de ma formation en d` eveloppement
informa-´ tique. Il m’a permis de developper des comp´ etences pratiques en mati´ ere de cr` eation
vii
d’interfaces, gestion´ de bases de donnees, et compr´ ehension des environnements de d´ eveloppement
int´ egr´ es.´
2.2 Objectifs Professionnels
Cette section decrit Sur le plan professionnel, l’objectif´ etait de me familiariser avec le d´
eveloppement´ d’applications dans un environnement reel de travail, d’apprendre´ a utiliser les outils
WinDev et WebDev,` et de participer activement a un projet de d` eveloppement d’application de
gestion.´
viii
Chapitre 3 Outils et Technologies Utilises´
3.1 WinDev
WinDev est un IDE conc¸u pour le developpement d’applications de bureau sous Windows. Il permet
de´ creer rapidement des applications robustes, en offrant une int´ egration native avec les bases de
donn´ ees et´ une gestion facilitee des interfaces utilisateur.´
3.2 WebDev
WebDev est utilise pour d´ evelopper des applications web dynamiques. Il permet de cr´ eer des
applica-´ tions accessibles via un navigateur tout en offrant des outils intuitifs pour la creation d’interfaces
utilisateurs.´
3.3 WinDev Mobile
WinDev Mobile est une extension de WinDev, dedi´ ee´ a la cr` eation d’applications mobiles pour les
pla-´ teformes Android et iOS. Il permet de developper des applications mobiles en utilisant la m´ eme
logiqueˆ de developpement que WinDev, avec une interface adapt´ ee aux sp´ ecificit´ es des appareils
mobiles. Win-´ Dev Mobile offre egalement des outils pour g´ erer les bases de donn´ ees locales, les
connexions r´ eseau, et´ l’integration de fonctionnalit´ es natives des smartphones (comme les
notifications push, le GPS, etc.)..´
FIGURE 3.1 – Image de WinDev , WebDev et WinDev Mobile
3.4 Base de Donnees et API´
Les bases de donnees utilis´ ees dans ce projet´ etaient g´ er´ ees sur XAMPP, avec une int´ egration
directe´ dans WinDev pour manipuler les donnees. Les API ont´ et´ e utilis´ ees pour enrichir l’application
avec des´ fonctionnalites externes, telles que la r´ ecup´ eration de donn´ ees.´
ix
FIGURE 3.2 – API
Chapitre 4 Description des Taches Rˆealis´ees´
4.1 Recherche sur WinDev et WebDev
J’ai effectue une recherche approfondie sur WinDev et WebDev pour comprendre leur
fonctionnement et´ leur capacite´ a r` epondre aux besoins du projet. WinDev permet le d´
eveloppement d’applications de bureau,´ tandis que WebDev se concentre sur les applications web. Leur
capacite´ a int` egrer des bases de donn´ ees et´ a cr` eer des interfaces graphiques a´ et´ e un point cl´ e
pour le succ´ es du projet.`
4.2 Creation d’Interfaces et Fonctionnalit´ es´
J’ai conc¸u des interfaces utilisateur avec WinDev, permettant d’afficher et de manipuler des donnees
´ dans des tableaux. J’ai utilise des fonctions telles que hlit Recherche(), hmodif(), et hajout() pour
interagir´ avec la base de donnees. Ces interfaces permettent de g´ erer facilement les informations des
employ´ es et´ leurs heures de travail.
4.3 Recherche sur l’Architecture SAAS
L’architecture SAAS (Software as a Service) permet de fournir des applications via internet, ce qui
simplifie leur mise a jour et leur gestion. J’ai explor` e comment WinDev et WebDev peuvent´ etre utilisˆ
es pour´ creer des applications en mode SAAS, offrant une grande scalabilit´ e et accessibilit´ e.´
4.4 Developpement d’une Application´
L’application developp´ ee´ etait une solution de gestion de pointeuse, int´ egrant une base de donn´
ees´ XAMPP pour stocker les informations des employes. J’ai cr´ e´e plusieurs interfaces pour afficher les
heures´ de travail et permettre leur modification. J’ai egalement d´ evelopp´ e des scripts pour g´ erer les
donn´ ees et´ assurer la bonne mise a jour de l’application.`
Chapitre 5 Problematiques Rencontr´ ees et´
Solutions Apportees´
x
Pendant le stage, plusieurs defis ont´ emerg´ e, notamment la gestion des connexions´ a la base de
donn` ees´ et l’integration des API externes. J’ai r´ esolu ces probl´ emes en me r` ef´ erant´ a la
documentation de WinDev et` en consultant des forums specialis´ es. Une autre probl´ ematique´ etait la
mise´ a jour en temps r` eel des donn´ ees´ dans l’interface, ce qui a et´ e r´ esolu par l’utilisation de m´
ecanismes de gestion dynamique des variables´
xi
Chapitre 6 Bilan et Perspectives
6.1 Bilan Personnel
Ce stage a et´ e une occasion id´ eale pour approfondir mes connaissances en d´ eveloppement
logiciel, no-´ tamment avec WinDev et WebDev. J’ai acquis de l’experience dans la cr´ eation
d’applications compl´ etes,` allant de la gestion des bases de donnees´ a l’int` egration d’API.´
6.2 Perspectives de Developpement´
A l’avenir, je souhaite continuer` a approfondir mes comp` etences en d´ eveloppement d’applications
web´ et mobiles, tout en explorant d’autres technologies comme les frameworks JavaScript et le
developpement´ cloud.
xii
Conclusion
Ce stage a et´ e une exp´ erience enrichissante qui m’a permis de d´ evelopper une application de
gestion´ de pointeuse et d’explorer les outils WinDev et WebDev. J’ai pu appliquer mes connaissances
theoriques´ dans un contexte pratique, tout en apprenant de nouvelles technologies et methodologies.
Cette exp´ erience´ m’a egalement permis de mieux comprendre les d´ efis et solutions dans le d´
eveloppement d’applications´ professionnelles.
xiii
Chapitre 7 Annexes
7.1 Captures d’Ecran de l’Application´ donees
´
7.1.1 Interface dans XAMPP
FIGURE 7.2 – Capture d’ecran´ du
parcour de table ivms
FIGURE 7.1 – Capture d’ecran´ de la
structure de table ivms dans dase de
7.1.2 Interface de gestion pointeuse
FIGURE 7.3 – Capture d’ecran´ du liaison
entre la base et WIN-
DEV
FIGURE 7.4 – Capture d’ecran´ du fichier de donnees´
xiv
Chapitre 7. Annexes
FIGURE 7.5 – Champ du temp FIGURE 7.6 – Affichage avec FIGURE 7.7 – Afichage avec
est obligatoire date et id et nom date et id
FIGURE 7.8 – Execution Auto-´ FIGURE 7.9 – Capture d’ecran´
matique des action d’execution´
FIGURE 7.10 – Connection
xv
Chapitre 7. Annexes
7.2 Bibliotheques`
7.2.1 HFSQL
HFSQL (High Function SQL) est la base de donnees native de WinDev. Elle est utilis´ ee pour g´ erer les´
donnees de mani´ ere efficace, en permettant de stocker et manipuler des informations dans des fichiers
de` donnees, que ce soit en mode local ou via un serveur.´
7.2.2 WDAPI
La bibliotheque WDAPI permet d’int` egrer des API externes dans WinDev et WinDev Mobile. Elle per-
´ met l’envoi de requetes HTTP et la rˆ ecup´ eration de donn´ ees depuis des services web utilisant les
protocoles´
REST ou SOAP.
7.2.3 WDWeb (pour WebDev)
WDWeb permet le developpement d’applications web dynamiques en facilitant l’int´ egration des
fonc-´ tionnalites web c´ otˆ e serveur et client. Elle permet d’utiliser des bases de donn´ ees, de cr´ eer
des interfaces, et´ d’etendre les fonctionnalit´ es de l’application avec des API externes.´
7.2.4 WLanguage
WLanguage est le langage de programmation natif de WinDev, WinDev Mobile et WebDev. Il fournit
des fonctions pour travailler avec des fichiers, des bases de donnees, des API et pour cr´ eer des
interfaces´ graphiques interactives.
7.2.5 WDB (Base de Donnees)´
Cette bibliotheque est utilis` ee pour g´ erer les bases de donn´ ees, permettant de cr´ eer des requ´
etes SQL,ˆ des operations CRUD (Create, Read, Update, Delete), ainsi que la gestion des transactions et
des verrous.´
7.2.6 WebService
La bibliotheque WebService permet l’int` egration de services web externes dans les applications
WinDev´ et WebDev. Elle facilite la communication avec des API REST ou SOAP en utilisant des requetes
HTTP.ˆ
7.2.7 SQLAPI
La bibliotheque SQLAPI permet de se connecter` a des bases de donn` ees externes comme MySQL,
SQL´ Server, PostgreSQL, etc., et d’interagir avec ces bases de donnees dans WinDev et WinDev Mobile.´
xvi
Chapitre 7. Annexes
7.2.8 Bibliotheques pour l’int`egration des bases de donn´ ees sur XAMPP´
[Link] PHP MySQLi
La bibliotheque PHP MySQLi permet de se connecter` a une base de donn` ees MySQL via XAMPP
en´ utilisant PHP. Elle est utile pour interagir avec les bases de donnees depuis des interfaces web cr´ e
´ees avec´ WebDev.
[Link] PDO (PHP Data Objects)
Le PDO est une bibliotheque PHP qui permet de se connecter` a diff` erentes bases de donn´ ees
(MySQL,´ PostgreSQL, SQLite, etc.), offrant une abstraction de la base de donnees pour les applications
web cr´ e´ees´ avec WebDev.
7.2.9 Bibliotheques pour l’int` egration des API´
[Link] WinDev HTTP
WinDev HTTP est une bibliotheque d` edi´ ee´ a la gestion des requ` etes HTTP. Elle permet
d’effectuer desˆ appels aux API REST et de recup´ erer des donn´ees au format JSON, XML, etc.´
[Link] WinDev SOAP
WinDev SOAP permet d’integrer des services web SOAP dans les applications WinDev et WebDev,´
facilitant ainsi la consommation d’API SOAP.
[Link] WinDev JSON
La bibliotheque JSON permet de travailler avec des donn` ees au format JSON, couramment utilis´ ees´
lors de l’integration d’API RESTful. Elle permet de s´ erialiser et de d´ es´ erialiser des objets JSON dans les´
applications WinDev.
7.2.10 Utilisation dans un projet
[Link] WinDev Mobile
Si vous utilisez WinDev Mobile pour developper des applications mobiles natives, les biblioth´
eques` Android API et iOS API permettent d’ajouter des fonctionnalites natives aux applications mobiles,
telles´ que l’acces aux capteurs, les notifications et la gestion de la g` eolocalisation.´
[Link] WinDev et XAMPP
Pour une integration avec XAMPP, l’utilisation de PHP et MySQL/MariaDB permet´ a WebDev
d’inter-` agir avec la base de donnees XAMPP de mani´ ere transparente, en envoyant et recevant des
donn` ees via des´ interfaces web.
Ces bibliotheques facilitent le d` eveloppement d’applications robustes et l’int´ egration de bases de
donn´ ees´ externes, ainsi que l’extension des applications avec des API pour des fonctionnalites avanc´
ees.´
xvii