Gérer le forum:  Aide  •  Rechercher  •  Liste des Membres  •  Groupes d'utilisateurs   •  S'enregistrer  •  Profil  •  Se connecter pour vérifier ses messages privés  •  Connexion 
 Problème script Batch Voir le sujet suivant
Voir le sujet précédent
Poster un nouveau sujetRépondre au sujet
Auteur Message
Faee
Forumeur fréquent
Forumeur fréquent


BTS IG - Option développeur 2ème année
Sexe: Sexe:Masculin
Messages: 53

MessagePosté le: Ven 28 Mai 2010 - 17:12 Répondre en citantRevenir en haut

Bonjour à tous,

Je viens de commencer mon stage en etreprise et, dans l'optique d'une entreprise sans papier, me voilà lancé dans la réalisation d'un petit programme.
Le principe est simple : envoyer un mail au service informatique avec les renseignements nécessaires pour une demande d'achat ou de remplacement de matériel.
J'ai décidé de le faire en batch mais c'est ma toute première fois. Après quelques recherches, voilà mon script qui doit sans doute être plein d'erreurs puisque je ne connais pas bien les syntaxes.
Sachant que j'aimerai enregistrer toutes mes variables dans un document corpdumail.txt avant d'envoyer le mail.
Code:
@echo off
title nouvelle demande d'achat
set /p societe=Societe ?
set /p nom=Nom ?
set /p prenom=Prenom ?
set /p login=Login ?
set /p service=Service ?
echo.
echo "Achat de Materiel"
echo.
:materiel
echo "Choisir le materiel a acheter"
set /p mat=(1:Portable --- 2:Bureau --- 3:Imprimante --- 4:Autre)
if %mat%==1(
:ok
set /p partic=Particularite du materiel informatique:
:modif
echo "Modification a apporter"
echo.
set /p install=Installation dun logiciel, dun pilote ou autre:
set /p acces=Acces a de nouveaux repertoires de travail:
echo fait le %date%
mail -s Nouvelle_demande_d_achat adressemailserviceinfo < corpdumail.txt
)
if %mat%==2(
goto :ok
)
if %mat%==3(
goto :ok
)
if %mat%==4(
goto :ok
)
echo "erreur de saisie, veuillez recommencer"
goto materiel
echo "appuyer sur une touche pour terminer."
pause


Ce script plante (tout s'arrete mais sans freezer) et la console disparaît au niveau du if.
Merci de m'indiquer si possible mes erreurs et comment les corriger.

Faee

_________________
2010/2011 - BTS IG Lycée Eiffel
2009/2010 - BTS IG Lycée Eiffel
2008/2009 - Bac ES opt. maths Séction Européenne
Voir le profil de l'utilisateurEnvoyer un message privé

N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire.
Neelix
Forumeur fréquent
Forumeur fréquent


BTS IG - Option réseau Diplômé
Sexe: Sexe:Masculin
Messages: 77
Localisation: Vitré (35)

MessagePosté le: Dim 30 Mai 2010 - 04:35 Répondre en citantRevenir en haut

Salut,

Je suis loin d'être un pro en batch, mais c'était une sorte de challenge pour moi, alors voici un premier jet...

J'avoue que je me suis servi allègrement de ces deux pages comme référence :
Didacticiel sur les fichiers Batch
Quelques exemples de scripts Batch

Bon, je ne suis pas sûr d'avoir compris tout ce que tu voulais obtenir avec ce code, mais j'ai essayé... Confused

Sinon, pour ce qui est de l'envoi par mail, je ne l'ai pas implémenté, mais je pense que tu vas devoir jeter un œil du côté de Blat pour y parvenir :
http://www.blat.net/

Wink

Code:
::

@echo off

:: Efface l’écran

cls

:: Ajoute un titre à la fenêtre

title [Nouvelle demande d'achat]

:: Définit la largeur et la hauteur de la fenêtre

@mode con: cols=70 lines=25

:: Définition des variables

:top

:: Efface l’écran

cls

echo.

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

echo º                                   º

echo º    - FICHE DE RENSEIGNEMENTS -    º

echo º                                   º

echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

echo.

echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

echo.

set /p societe= * Soci‚t‚ ?

echo.

set /p nom= * Nom ?

echo.

set /p prenom= * Pr‚nom ?

echo.

set /p login= * Login ?

echo.

set /p service= * Service ?

echo.

echo ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

echo.

set /p rep=Votre saisie est-elle correcte (o/n) ?

if /i not "%rep%"=="o" goto top

:materiel

:: Efface l’écran

cls

echo.

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

echo º                                   º

echo º       - ACHAT DE MAT�RIEL -       º

echo º                                   º

echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

echo.

echo ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

echo ³                                   ³

echo ³  Choisir le mat‚riel … acheter :  ³

echo ³                                   ³

echo ³  1 ===  Portable                  ³

echo ³                                   ³

echo ³  2 ===  Bureau                    ³

echo ³                                   ³

echo ³  3 ===  Imprimante                ³

echo ³                                   ³

echo ³  4 ===  Autre                     ³

echo ³                                   ³

echo ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

echo.

set /p mat=Quel est votre choix (1, 2, 3 ou 4) ?

if ‘%mat%‘==‘1‘ (
set matos=Portable
goto ok
)

if ‘%mat%‘==‘2‘ (
set matos=Bureau
goto ok
)

if ‘%mat%‘==‘3‘ (
set matos=Imprimante
goto ok
)

if ‘%mat%‘==‘4‘ (
set matos=Autre
goto ok
)

echo.

echo ^!^!^! ERREUR DE SAISIE ^!^!^!

echo.

pause

goto materiel

:ok

:: Efface l’écran

cls

echo.

echo Mat‚riel : %matos%

echo.

set /p partic=Particularit‚ du mat‚riel informatique :

echo.

echo Modification … apporter

echo.

set /p install=Installation d'un logiciel, d'un pilote ou autre :
 
echo.

set /p acces=AccŠs … de nouveaux r‚pertoires de travail :

(

@echo Demande faite le %date%

@echo ===========================

@echo/

@echo Société : %societe%

@echo Nom : %nom%

@echo Prénom : %prenom%

@echo Login : %login%

@echo Service : %service%

@echo/

@echo Type de matériel : %matos%

@echo/

@echo Particularité du matériel informatique :

@echo %partic%

@echo/

@echo Modification à apporter

@echo/

@echo Installation d'un logiciel, d'un pilote ou autre :

@echo %install%
 
echo/

@echo Accès à de nouveaux répertoires de travail :

@echo %acces%

) > corpdumail.txt

echo.

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»

echo º                                                            º

echo º FICHIER "corpsdumail.txt" PRÒT · ÒTRE ENVOY� PAR MAIL... º

echo º                                                            º

echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

echo.

pause

_________________
Neelix
Voir le profil de l'utilisateurEnvoyer un message privé
Faee
Forumeur fréquent
Forumeur fréquent


BTS IG - Option développeur 2ème année
Sexe: Sexe:Masculin
Messages: 53

MessagePosté le: Dim 30 Mai 2010 - 11:27 Répondre en citantRevenir en haut

Bonjour,
Merci beaucoup de ta réponse, tu as tout à fait cerné ce que je voulais comme résultat final.
Je n'ai plus qu'à faire des petites recherches pour l'envoi du mail en commençant par ton lien.
Encore merci.

Faee

_________________
2010/2011 - BTS IG Lycée Eiffel
2009/2010 - BTS IG Lycée Eiffel
2008/2009 - Bac ES opt. maths Séction Européenne
Voir le profil de l'utilisateurEnvoyer un message privé
Montrer les messages depuis:      
Poster un nouveau sujetRépondre au sujet
    Sujets complémentaires :
  • [Batch dos]
  • [Résolu] [BATCH] Renommage de fichier
  • script
  • PTI script????
  • PB Script Net Use
 Sauter vers:   



Voir le sujet suivant
Voir le sujet précédent
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum