garry
Anmeldedatum: 25.10.2005 Beiträge: 400 Wohnort: switzerland
|
Verfasst am: Mi Mai 07, 2008 5:30 pm Titel: MehrwertSteuer |
|
|
hier nur ein kleines Rechen-Beispiel
rechnen mit Rundung 2-stellig oder runden auf 0.00 / 0.05
| Code: |
MODIFIED=20080402
;-------------------------------------------------------------------
/*
Mehrwertsteuer
*/
;-------------------------------------------------------------------
;-------------- REMARKS -------------------------
/*
NETTO = 100.00 %
ADD MWST = 7.60 %
BRUTTO = 107.60 %
*/
;-------------------------------------------------
setformat,float,0.4
Gui,3:Font,,FixedSys
MWST=7.6
ANZ =1
Gui,3:Add,Text,cgreen x10 y10 h20 w105 ,MWST `% (7.6)
Gui,3:Add,Text,cgreen x10 y35 h20 w105 ,ANZAHL
Gui,3:Add,Text,cgreen x10 y60 h20 w105 ,NETTO CHF >
Gui,3:Add,Text,cgreen x10 y85 h20 w105 ,BRUTTO CHF >
Gui,3:Add,Text,cgreen x10 y110 h20 w105 ,MWST CHF
Gui,3:Add,Text,cgreen x10 y135 h20 w105 ,NETTO (1)
Gui,3:Add,Text,cgreen x10 y160 h20 w105 ,BRUTTO (1)
Gui,3:Add,Text,cgreen x10 y185 h20 w105 ,MWST (1)
Gui,3:Add,Edit,cRed x120 y10 h20 w180 vMWST1 ,%MWST%
Gui,3:Add,Edit,cRed x120 y35 h20 w180 vANZ ,%ANZ%
Gui,3:Add,Edit,cRed x120 y60 h20 w180 vNETTO ,
Gui,3:Add,Edit,cRed x120 y85 h20 w180 vBRUTTO ,
Gui,3:Add,Edit,cRed x120 y110 h20 w180 readonly vMWST2 ,
Gui,3:Add,Edit,cRed x120 y135 h20 w180 readonly vNETTOE ,
Gui,3:Add,Edit,cRed x120 y160 h20 w180 readonly vBRUTTOE ,
Gui,3:Add,Edit,cRed x120 y185 h20 w180 readonly vMWSTE ,
Gui,3:Add,Button, x10 y220 h20 w100 gSTART ,START
Gui,3:Add,Button, x120 y220 h20 w100 gCLEAR1 ,CLEAR
Gui,3:Add,Button, x10 y250 h20 w100 gINFO1 ,INFO
Gui,3:Show, x100 y20 h290 w320 ,MEHRWERTSTEUER
return
;-------------------------------------------------------------------
CLEAR1:
GuiControl,3:,NETTO,
GuiControl,3:,BRUTTO,
GuiControl,3:,MWST2,
GuiControl,3:,NETTOE,
GuiControl,3:,BRUTTOE,
GuiControl,3:,MWSTE,
return
;-------------------------------------------------------------------
INFO1:
run,http://www.borkoffice.de/html/netto_aus_brutto.html
return
START:
gui,3:submit,nohide
if (NETTO<>"" AND BRUTTO<>"")
{
msgbox, NETTO OR BRUTTO MUST be EMPTY
return
}
if (NETTO="" AND BRUTTO="")
{
msgbox, NETTO AND BRUTTO ARE EMPTY`nFill out ONE form
return
}
; ---- calculate brutto -------
if NETTO<>
{
BRUTTOX=0
MWST2X =0
if (ANZ="" OR ANZ=0)
ANZ=1
TOTNETTO:=(ANZ*NETTO)
MWST2E :=(NETTO*MWST1)/100
MWST2X :=(TOTNETTO*MWST1)/100
BRUTTOX:=(MWST2X+TOTNETTO)
BRUTTOE:=(MWST2E+NETTO)
setformat,float,0.2
;--- RUNDEN auf 2-stellen --------
;BRUTTOX:=floor(BRUTTOX*100+.5)/100
;MWST2X :=floor(MWST2X*100+.5)/100
;--- runden au 0.00 oder 0.05 --
BRUTTOX:=(round(BRUTTOX*20)/20)
MWST2X :=(round(MWST2X*20)/20)
GuiControl,3:,BRUTTO ,%BRUTTOX%
GuiControl,3:,BRUTTOE,%BRUTTOE%
GuiControl,3:,MWST2 ,%MWST2X%
GuiControl,3:,MWSTE ,%MWST2E%
return
}
;--- calculate netto ------
if BRUTTO<>
{
NETTOX =0
MWST2X =0
if (ANZ="" OR ANZ=0)
ANZ=1
TOTBRUTTO:=(ANZ*BRUTTO)
NETTOE :=(BRUTTO*100)/(100+MWST1)
NETTOX :=(TOTBRUTTO*100)/(100+MWST1)
MWST2E :=(BRUTTO/(100+MWST1))*MWST1
MWST2X :=(TOTBRUTTO/(100+MWST1))*MWST1
setformat,float,0.2
;--- RUNDEN auf 2-stellen --------
;NETTOX :=floor(NETTOX*100+.5)/100
;MWST2X :=floor(MWST2X*100+.5)/100
;--- runden au 0.00 oder 0.05 --
NETTOX:=(round(NETTOX*20)/20)
MWST2X :=(round(MWST2X*20)/20)
GuiControl,3:,NETTO ,%NETTOX%
GuiControl,3:,NETTOE,%NETTOE%
GuiControl,3:,MWST2 ,%MWST2X%
GuiControl,3:,MWSTE ,%MWST2E%
return
}
return
;-------------------------------------------------------------------
3guiclose:
exitapp
;-------------------------------------------------------------------
|
|
|