begin process at 2012 05 27 21:59:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > CALCUL DE TVA MARGE AVEC REMISE FOURNISSEUR SPÉCIALE POUR LES COMMERCANTS.

CALCUL DE TVA MARGE AVEC REMISE FOURNISSEUR SPÉCIALE POUR LES COMMERCANTS.


 Information sur la source

Note :
Aucune note
Catégorie :Maths & Algorithmes Classé sous :CALCUL, CALCULETTE, MARGE, COMMERCANT, CALCULER Niveau :Débutant Date de création :10/09/2009 Date de mise à jour :12/09/2009 14:02:34 Vu :9 641

Auteur : lcomb

Ecrire un message privé
Site perso
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Le titre est assez parlant ,Calcul de TVA MARGE avec remise fournisseur ,c'est une application spéciale pour les commercants.

Source

  • <html>
  • <head>
  • <meta http-equiv="Content-Language" content="fr">
  • <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  • <title>Calculer sa marge</title>
  • </head>
  • <?php
  • $colortext="#666666";
  • $bgcolor="#000000";
  • $cellulebgcolor="#ffffff";
  • ECHO"<body text=$colortext bgcolor=$bgcolor>
  • <center>";
  • @$calcul=$_GET['calcul'];
  • if( isset( $_GET['calcul'] ) && $_GET['calcul'] == 'oui' )
  • {
  • //PHP créer un tableau : $_POST qui contient les information des formulaire utilisant la methode post, pour otbenir les information c'est très simple, voyez :
  • echo "<FONT COLOR=red>
  • Tva : ".$_POST["caseoption"]."|
  • PRIX CATALOGUE HT : ".$_POST["textbox"]."|
  • TRANSPORT HT : ".$_POST["textarea"]."|
  • REMISE SUR LE CATALOGUE: ".$_POST["listbox"]."|
  • COEFFICIENT SUR LE CATALOGUE : ".$_POST["coeff"]."</FONT>
  • ";
  • $remise = $_POST['listbox']; //c'est la remise
  • $paht = $_POST['textbox']; //c'est le prix hors taxes catalogue
  • $portht = $_POST['textarea']; // le prix hors taxes de transport
  • $coeff = $_POST['coeff']; // le coefficient appliqué pour se faire une petite marge
  • $taux = $_POST['caseoption']; // tva....
  • $coeftva = ($taux + 100) / 100;// CALCUL TVA....
  • $remise =(100-$remise) / 100;// CALCUL REMISE....
  • $revientht = ($paht * $remise) + $portht;// HT TOTAL....
  • $revientttc = round(($paht * $remise * $coeftva)+($portht*1.196), 2);// TTC TOTAL....
  • $tvaarecuperer = $revientttc - $revientht;// HT TOTAL....
  • $pvttc1 = ($paht * $remise) * $coeff;// HT PRODUIT + MARGE....
  • $portht = $portht ;// HT TRANSPORT
  • $pvttc2 = $portht+(($paht * $remise) * $coeff);// HT PRODUIT + MARGE....
  • $pvttc = $revientht * $coeff;// COEF TOTAL TTC
  • $pvttcp = round($pvttc1 * $coeftva, 2);// PV TTC PRODUIT
  • $pvttcT = round($portht*1.196, 2);// PV TTC TRANSPORT
  • $pvTotal= $pvttcT+$pvttcp ;
  • $tvaEncaisse = $pvttcp - $pvttc1 ; //TVA PRODUIT
  • $tvaEncaisse2 = $pvttcT - $portht; //TVA TRANSPORT
  • $tvaEncaisse3 = $tvaEncaisse + $tvaEncaisse2; //TVA
  • $tvaAPayer = $tvaEncaisse + $tvaEncaisse2 - $tvaarecuperer; //COUT DE LA TVA
  • $marge = $pvttc2 - $revientht;//MARGE
  • $margePourCent = round($marge / ($pvttc2 / 100), 2);
  • echo '
  • <TABLE CELLSPACING=1>';
  • $boucle1 = array(
  • 'LES ACHATS'=>'',
  • 'ACHAT HT'=>''.$revientht.'',
  • 'ACHAT TVA'=>''.$tvaarecuperer.'',
  • 'ACHAT TTC'=>''.$revientttc.'',
  • 'PRIX DE VENTE'=>'',
  • 'PRODUIT____HT'=>''.$pvttc1.'',
  • 'TRANSPORT____HT'=>''.$portht.'',
  • 'TOTAL____HT'=>''.$pvttc2.'',
  • 'PRODUIT____TVA'=>''.$tvaEncaisse.'',
  • 'TRANSPORT____TVA'=>''.$tvaEncaisse2.'',
  • 'TOTAL____TVA'=>''.$tvaEncaisse3.'',
  • 'PRODUIT____TTC'=>''.$pvttcp.'',
  • 'TRANSPORT____TTC'=>''.$pvttcT.'',
  • 'TOTAL____TTC'=>''.$pvTotal.'',
  • 'RESUME'=>'',
  • 'TVA à payer'=>'' . $tvaAPayer .'',
  • 'Ma marge'=>'' . $marge .' Euros, soit ' . $margePourCent . '% du prix Ht de vente',
  • );
  • // pour parcourir ce tableau, utilisons la boucle foreach
  • foreach($boucle1 as $cle=>$valeur)
  • {
  • echo "<tr ALIGN=LEFT><td ALIGN=LEFT VALIGN=TOP BGCOLOR=$cellulebgcolor >$cle </td><td ALIGN=LEFT VALIGN=TOP BGCOLOR=$cellulebgcolor> $valeur</td><tr/>";
  • }
  • echo '
  • <table />
  • <A HREF="tvas.php" >RETOUR</a>
  • ';
  • }ELSE{
  • //Balise d'ouverture de la zone de formulaire
  • ?>
  • <form method="POST" action="tvas.php?calcul=oui">
  • <p align="<center>">
  • <?php
  • //La case d'option
  • //nom : caseoption
  • ?>
  • TVA<input type="radio" name="caseoption" value="5.5" CHECKED>5.5<input type="radio" name="caseoption" value="19.6" >19.6</p>
  • <?php
  • ;?>
  • <p align="<center>">MONTANT CATALOGUE HT &nbsp; <input type="text" name="textbox" value="100"size="5"> &nbsp;TRANSPORT HT &nbsp;
  • <input type="text" name="textarea" value="0"size="5"></p>
  • <?php
  • //Liste Deroulante
  • //nom : listbox
  • ?>
  • <p align="<center>">
  • <SELECT NAME="listbox" MULTIPLE SIZE=25>
  • <optgroup label="REMISE FOURNISSEUR">
  • <OPTION >20 %
  • <OPTION >30 %
  • <OPTION >35 %
  • <?php for ($a=40;$a<=54;$a++){
  • echo"<option > $a %";};?>
  • <OPTION SELECTED>55 %
  • <?php for ($a=56;$a<=60;$a++){
  • echo"<option > $a % ";};?>
  • </optgroup>
  • </SELECT>
  • <SELECT NAME="coeff" MULTIPLE LONG=10 SIZE=25>
  • <optgroup label="coefficient">
  • <?php for ($a=18;$a<=21;$a++){$b=($a/10);
  • echo"<option > $b ";};?>
  • <OPTION SELECTED>2.2
  • <?php for ($a=23;$a<=40;$a++){$b=($a/10);
  • echo"<option > $b ";};?>
  • </optgroup>
  • </SELECT>
  • </p>
  • <p align="<center>">
  • <?php
  • //Bouton d'envoie
  • //pas besoin de nom
  • ?>
  • <input type="submit" value="Envoyer"></p>
  • </form>
  • <?php
  • //Balise de fermeture de la zone de formulaire
  • };
  • ?>
  • </body>
  • </html>
<html>
<head>
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Calculer sa marge</title>
</head>
<?php
$colortext="#666666"; 
$bgcolor="#000000"; 
$cellulebgcolor="#ffffff"; 
ECHO"<body text=$colortext bgcolor=$bgcolor>
<center>";
@$calcul=$_GET['calcul'];
 
if( isset( $_GET['calcul'] ) && $_GET['calcul'] == 'oui' ) 
{
//PHP créer un tableau : $_POST qui contient les information des formulaire utilisant la methode post, pour otbenir les information c'est très simple, voyez :
echo "<FONT COLOR=red> 
Tva : ".$_POST["caseoption"]."|
PRIX CATALOGUE HT : ".$_POST["textbox"]."|
TRANSPORT HT : ".$_POST["textarea"]."|
REMISE SUR LE CATALOGUE: ".$_POST["listbox"]."|
COEFFICIENT SUR LE CATALOGUE  : ".$_POST["coeff"]."</FONT>
";
$remise = $_POST['listbox']; //c'est la remise  
$paht = $_POST['textbox']; //c'est le prix hors taxes catalogue  
$portht = $_POST['textarea']; // le prix hors taxes de transport 
$coeff = $_POST['coeff']; // le coefficient appliqué  pour se faire une petite marge 
$taux = $_POST['caseoption']; // tva.... 
$coeftva = ($taux + 100) / 100;// CALCUL TVA.... 
$remise =(100-$remise) / 100;// CALCUL REMISE.... 
$revientht = ($paht * $remise) + $portht;// HT TOTAL.... 
$revientttc = round(($paht * $remise * $coeftva)+($portht*1.196), 2);// TTC TOTAL.... 
$tvaarecuperer = $revientttc - $revientht;// HT TOTAL.... 
$pvttc1 = ($paht * $remise) * $coeff;// HT PRODUIT + MARGE.... 
$portht = $portht ;// HT TRANSPORT 
$pvttc2 = $portht+(($paht * $remise) * $coeff);// HT PRODUIT + MARGE.... 
$pvttc = $revientht * $coeff;// COEF TOTAL TTC
$pvttcp = round($pvttc1 * $coeftva, 2);// PV TTC PRODUIT
$pvttcT = round($portht*1.196, 2);// PV TTC TRANSPORT
$pvTotal= $pvttcT+$pvttcp ;
$tvaEncaisse = $pvttcp - $pvttc1 ; //TVA PRODUIT
$tvaEncaisse2 = $pvttcT - $portht; //TVA TRANSPORT 
$tvaEncaisse3 = $tvaEncaisse + $tvaEncaisse2; //TVA 
$tvaAPayer = $tvaEncaisse + $tvaEncaisse2 - $tvaarecuperer; //COUT DE LA TVA
$marge = $pvttc2 - $revientht;//MARGE
$margePourCent = round($marge / ($pvttc2 / 100), 2);


echo '


<TABLE CELLSPACING=1>';

$boucle1 = array( 
'LES ACHATS'=>'', 
'ACHAT HT'=>''.$revientht.'', 
'ACHAT TVA'=>''.$tvaarecuperer.'', 
'ACHAT TTC'=>''.$revientttc.'', 
'PRIX DE VENTE'=>'', 
'PRODUIT____HT'=>''.$pvttc1.'', 
'TRANSPORT____HT'=>''.$portht.'', 
'TOTAL____HT'=>''.$pvttc2.'', 
'PRODUIT____TVA'=>''.$tvaEncaisse.'', 
'TRANSPORT____TVA'=>''.$tvaEncaisse2.'', 
'TOTAL____TVA'=>''.$tvaEncaisse3.'', 
'PRODUIT____TTC'=>''.$pvttcp.'', 
'TRANSPORT____TTC'=>''.$pvttcT.'', 
'TOTAL____TTC'=>''.$pvTotal.'',  
'RESUME'=>'', 
'TVA à payer'=>'' . $tvaAPayer .'', 
'Ma marge'=>'' . $marge .' Euros, soit  ' . $margePourCent . '% du prix Ht de vente',  
); 

// pour parcourir ce tableau, utilisons la boucle foreach 
foreach($boucle1 as $cle=>$valeur) 
    { 
    echo "<tr ALIGN=LEFT><td ALIGN=LEFT VALIGN=TOP BGCOLOR=$cellulebgcolor >$cle </td><td ALIGN=LEFT VALIGN=TOP BGCOLOR=$cellulebgcolor> $valeur</td><tr/>"; 

    } 

	 
	 
	 
echo '




<table />
<A HREF="tvas.php" >RETOUR</a>

';


}ELSE{






//Balise d'ouverture de la zone de formulaire
?>
<form method="POST" action="tvas.php?calcul=oui">
 

 <p align="<center>">

<?php
//La case d'option
//nom : caseoption
?>
  TVA<input type="radio" name="caseoption" value="5.5" CHECKED>5.5<input type="radio" name="caseoption" value="19.6" >19.6</p>

<?php

;?>
<p align="<center>">MONTANT CATALOGUE HT 	&nbsp;  <input type="text" name="textbox" value="100"size="5">	&nbsp;TRANSPORT HT   	&nbsp;
<input type="text" name="textarea" value="0"size="5"></p>


<?php
//Liste Deroulante
//nom : listbox
?>
  <p align="<center>">
 <SELECT NAME="listbox"  MULTIPLE SIZE=25>
     <optgroup label="REMISE FOURNISSEUR">
	 <OPTION >20 %
	 <OPTION >30 %
	 <OPTION >35 %
	    <?php for ($a=40;$a<=54;$a++){
 echo"<option > $a %";};?>
   <OPTION SELECTED>55 %
    <?php for ($a=56;$a<=60;$a++){
 echo"<option > $a % ";};?>


     </optgroup>
  </SELECT>
  
  <SELECT NAME="coeff"  MULTIPLE LONG=10 SIZE=25>
  
   <optgroup label="coefficient">
 <?php for ($a=18;$a<=21;$a++){$b=($a/10);
 echo"<option > $b ";};?>
   <OPTION  SELECTED>2.2
   <?php for ($a=23;$a<=40;$a++){$b=($a/10);
 echo"<option > $b ";};?>
   
      </optgroup>
  </SELECT>
  
  
  </p>
  <p align="<center>">

<?php
//Bouton d'envoie
//pas besoin de nom
?>
<input type="submit" value="Envoyer"></p>



</form>

<?php
//Balise de fermeture de la zone de formulaire




};
?>



</body>

</html> 

 Conclusion

J'attends vos commentaires et avec toutes les sources que j'ai pris je me devais bien de tisser moi aussi la toile .C'est mon premier script posté ici .


 Historique

10 septembre 2009 22:50:12 :
J'ai mis une capture d'ecran c 'est plus jojo
12 septembre 2009 13:58:16 :
Amelioration de mon code . En tenant compte des remarques
12 septembre 2009 14:02:34 :
Oublie de deux majuscules dans ma variable

 Sources de la même categorie

EXEMPLE D'APPLICATION DE L'ALGORITHME DE DIJKSTRA EN PHP par philtr8
CLEF POUR EAN 13 ET 14 par RaftY
FONCTION DE CALCUL DU NOMBRE DE DUEL UNIQUE POUR UN NOMBRE N... par mtrix000
Source avec Zip Source avec une capture TRIANGLE DE PASCAL ET SON ÉQUATION par vendeeHdLR89
Source avec Zip CONVERTISSEUR LAMBERT2 ÉTENDU EN COORDONNÉE GÉOGRAPHIQUE (LO... par varfendell

 Sources en rapport avec celle ci

FONCTION DE CALCUL DU NOMBRE DE DUEL UNIQUE POUR UN NOMBRE N... par mtrix000
Source avec Zip Source avec une capture BMI CALCULATOR par lolosb
FONCTION EQUATION LÉGÈRE par ff5
Source avec une capture CALCULATRICE par Fidji56
Source avec Zip FONCTION QUI CALCULE L'AGE A PARTIR D'UNE DATE DE NAISSANCE par italiasky

Commentaires et avis

Commentaire de willeraser le 11/09/2009 06:02:48

Zomfgwtfbbqh4x !? $HTTP_POST_VARS ?! Il faut le bannir et utiliser $_POST à la place !
Tu utilises l'opérateur @ dans le test de la valeur d'une variable (et l'affectation aussi), je vois pas l'utilité là... Il te suffit de tester si la variable existe...avec isset(), qui ne renvoit pas de message d'erreur dans le cas où elle n'existe pas. et si tu veux ensuite tester la valeur précise de cette  var, tu rajoutes && $_GET['mavar'] == mavaleur après le isset().

Surtout, utiliser une variable intermédiaire pour une valeur qui n'est utilisée qu'une fois... autant mettre un if( isset( $_GET['mavar'] ) && $_GET['mavar'] == '2' ) { le reste; }

Mais si j'ai bien compris ton script, tu testes cette valeur pour savoir si le formulaire a été validé ? Si c'est le cas, ton bouton submit va forcément être défini, autant le tester lui et virer ton champ caché. Aussi, utilise les simples quotes au lieu des doubles.

Pour ta partie HTML, j'aurais bien vu l'utilisation d'un sprintf avec ta chaine HTML mémorisée et 2 injections de string dedans

$var = '<tr ALIGN=LEFT><td ALIGN=LEFT VALIGN=TOP BGCOLOR="#ffffff" >%s</td><td ALIGN=LEFT VALIGN=TOP BGCOLOR="#ffffff">%s</td><tr/> ';
echo sprintf( $var , 'achat ht' , 'blabla' ) ,
     sprintf( $var , 'achat ttc' , 'blabla2' );
etc...

En allant plus loin, un array( array( '' , '' ) ); contenant chaque intitulé avec sa variable...tu mets un for qui boucle de 0 jusqu'au nombre d'éléments du tableau (count) et tu peux boucler pour injecter les valeurs au fur et à mesure dans ton sprintf, ça serait super propre ;)

En HTML valide (et XHTML), pas de majuscules dans les tags ! Et les valeurs de chaque attribut doivent être entourée de guillemets (certains mettent des apostrophes). Puis vaut mieux mettre le style dans une partie CSS que l'intégrer directement dans l'HTML.

Ensuite, enlève : <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
(pour éviter de te faire incendier :D)

Commentaire de lcomb le 11/09/2009 11:58:47

Salut
Commentaire objectif , je me suis jamais servi de frontpage LOL UN COPIER COLLER EST PASSER PAR LA LOL .
J'ai bien compris merci de ton aide ,j'ai appris sur le tas ici et ailleurs ,je le changerai quand j'ai le temps :D)

Commentaire de DAM74 le 13/01/2010 00:52:58

ou est le fichier zip !!!!

Commentaire de prog35 le 26/10/2010 00:32:45

salut dites moi est ce  que je peux tenter de reecrire ce programm en vba c est pour un projet que nous devons realier en cours

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

calcul d'une durée [ par noneed4anick ] j'ai deux colonnes ds un base MySQL au format datetime ( 2002-01-15 15:57:32 )comment faire pour calculer la durée qu'il s'est écoulé entre les deux, calcul de l'age [ par Maheu ] Salut à tous!!Je suis newby en PhP et voudrai calculer un age a partir de deux dates (la date courante date() et une date de naissance au format dd-mm Calculer des heures [ par motherboy ] Salut a toi !Moi je souhaite calculer des heures !ex : 01:00:00 - 00:30:00 = 00:30:00Qui pourrais me dire le code à faire pr calculer des heures!Merci Calcul ecart entre 2 heures [ par must ] Salut,voila ce que je cherche,mais trouve pas,alors si vous pouviez m'aiderJe fix une geure limite,dison:20 heures,30, minutes,20 secondesQuand on vie Calcul [ par cyrilnd01 ] Bonjour @tous,Voila sa fait déja une semaines que je cherche comment je pourrait faire pour calculer un trucs, et je n'arrive pasJe vais vous expliqué probleme de stockage et calcul d'agregat [ par ludlu ] salut au lecteur de ce message,je voudrai pouvoir realiser ceci :J'ai a calculé un agregat a partir de resultats de plusieurs requetes qui retourneron calcul de l'espace utilisé sur le serveur [ par jaketstream ] salutvoilà, j'ai deux questions :1. j'ai mis en place un script qui permet de scruter l'ensemble des dossiers et de donner leur taille, puis à la fin calcul entre 2 dates [ par ymothep ] Bonjour à tous,j'ai une table Historique dans une base de donnée dans la laquel je rentre les dates de connexions à un site. Les dates dans la base so nbs de jours entre 2 dates [ par kodiask ] Voilà je voulais savoir par quels moyenon peut calculer le nombres de jours entre 2 datesexemple : pour calculer le nombre de jours qu'une personne es calcul la durée d'une SESSION [ par goyes ] slt,j'ai crée une session sur ma page .D'abord j'ai remarqué que la session est detruite que lorsque la fenetre du navigateur de l'internaute est tota


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales