Prikazi cijelu temu 14.05.2014 01:10
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Lokacija:Ohrid Makedonija


Predmet:Presmetka DPH (DDV) , (PDV) vo cod so popust
Pozdrav do site.
Ovaj moj Problem se sostoi vo toa sto treba da napravam rekapitulacija na po Danocni stavki na Racun vo koj e vklucen i Popust.

Imam dva Recordseti edniot e za stavkite vo racunot , drugiot e za danocnite stavki vo racunot e sega ne mozam da napravam rekapitulacija na danocni stavki na racun na koj ima dadeno odreden popust.

Eve ja funkcijata za racunot a ke stavam i baza ako nekoj ima ideja kako da se resi
PreuzmiIzvorni kфd (Visual Basic):
  1. Function PrintSmetka(SmetkaBroj As Long, Rabat As Double, Storno As Boolean)
  2. On Error GoTo PosError
  3. PrintSmetkaOK = False
  4.  
  5.    Dim rs As ADODB.Recordset
  6.    Dim rs_Smetka As ADODB.Recordset
  7.    Dim rs_DDV As ADODB.Recordset
  8.    Dim txt As String
  9.    Dim Naziv As String
  10.    Dim Danok As String
  11.    Dim Cena As String
  12.    Dim DDV As String
  13.    Dim Kolicina As String
  14.    Dim Rb As Integer
  15.    Dim SQLSmetkaStavki As String
  16.        SQLSmetkaStavki = "SELECT tblSmetki_Stavki.Barkod AS Barkod, tblArtikli_Prodazba.Naziv AS Naziv, tblSmetki_Stavki.Ed_Cena AS Ed_Cena, Sum(tblSmetki_Stavki.Kolicina) AS Kolicina, tblEdinica_Mera.EDM AS EDM, tblSmetki_Stavki.DDV AS DDV, Sum(tblSmetki_Stavki.Kolicina)*tblSmetki_Stavki.Ed_Cena AS Vkupno" _
  17.                      & " FROM tblEdinica_Mera INNER JOIN (tblArtikli_Prodazba INNER JOIN tblSmetki_Stavki ON tblArtikli_Prodazba.ID_ArtikalP = tblSmetki_Stavki.Stavka) ON (tblEdinica_Mera.ID_EDM = tblSmetki_Stavki.Ed_Mera) AND (tblEdinica_Mera.ID_EDM = tblArtikli_Prodazba.Edm)" _
  18.                      & " Where (((tblSmetki_Stavki.Smetka_Br) = " & SmetkaBroj & "))" _
  19.                      & " GROUP BY tblSmetki_Stavki.Barkod, tblArtikli_Prodazba.Naziv, tblSmetki_Stavki.Ed_Cena, tblEdinica_Mera.EDM, tblSmetki_Stavki.DDV" _
  20.                      & " ORDER BY tblSmetki_Stavki.Barkod;"
  21.    
  22.    
  23.    Set rs_Smetka = New ADODB.Recordset
  24.        rs_Smetka.Open "SELECT * FROM tblSmetki WHERE ID_Smetka=" & SmetkaBroj, cn, adOpenStatic, adLockOptimistic
  25.    Set rs = New ADODB.Recordset
  26.        rs.Open SQLSmetkaStavki, cn, adOpenStatic, adLockOptimistic
  27.    
  28.      SQL_DDV = "SELECT tblSmetki_Stavki.DDV, Sum([Ed_Cena]*[Kolicina]) AS SoDDV, Sum(([Ed_Cena]/[Koeficient])*[Kolicina]) AS BezDDV, Sum(([Kolicina]*[Ed_Cena])-(([Ed_Cena]/[Koeficient])*[Kolicina])) AS dDDV" _
  29.              & " FROM tblTarifi INNER JOIN tblSmetki_Stavki ON tblTarifi.Tarifa = tblSmetki_Stavki.DDV" _
  30.              & " Where (((tblSmetki_Stavki.Smetka_Br) =" & SmetkaBroj & ")) GROUP BY tblSmetki_Stavki.DDV;"
  31.      
  32.      Set rs_DDV = New ADODB.Recordset
  33.          rs_DDV.Open SQL_DDV, cn, adOpenStatic, adLockOptimistic
  34.      
  35.    
  36.    If rs.RecordCount <= 0 Then
  37.      '  MsgBox "Бројот на ставките во нарачката за шанк е помал или енаков на 0! ВадеЕ“ето на нарачка не е дозволено "
  38.       PrintSmetkaOK = True
  39.        Exit Function
  40.    End If
  41.    
  42.   '**************************************************************************
  43.     If SelectPrinter(ReadIniValue(App.path & "\Setup.ini", "Printeri", "Smetka")) = True Then
  44.         Call MsgBox("PRINTER NOT FOUND  ", vbOKOnly + vbExclamation + vbApplicationModal + vbDefaultButton1, "")
  45.         Exit Function
  46.       End If
  47.   '**************************************************************************
  48.    
  49.     With Printer.Font
  50.         .Name = "Times New Roman"
  51.        ' .Name = "Arial"
  52.        .Size = ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "SizeFont")
  53.     End With
  54.  
  55. Printer.Print Space(LevMargin) & "*******************************"
  56. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Header1")
  57. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Header2")
  58. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Header3")
  59. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  60. Printer.Print Space(LevMargin) & " Datum  :                      " & Format(Date, "dd.mm.yyyy")
  61. Printer.Print Space(LevMargin) & " Cas    :                          " & Time
  62. Printer.Print Space(LevMargin) & " Stul ....... " & DLookup("Masa", "tblMasi", "ID_Masa=" & rs_Smetka!Masa)
  63. Printer.Print Space(LevMargin) & " Cisnik ... " & DLookup("Vraboten_Ime", "tblVraboteni", "ID_Vraboten=" & rs_Smetka!Vraboten)
  64. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  65. If Storno = True Then
  66.    Printer.Print Space(LevMargin) & "                  STORNO UCET "
  67. Else
  68.    Printer.Print Space(LevMargin) & "                      UCET     "
  69. End If
  70. Printer.Print Space(LevMargin) & "           Cislo : " & Format(DLookup("Smetka_Broj", "tblSmetki", "ID_Smetka=" & SmetkaBroj), "0000000")
  71. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  72. Printer.Print Space(LevMargin) & "Rb  Nazev           "
  73. Printer.Print Space(LevMargin) & "         Mnozstvi        Cena        Celkem"
  74. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  75.    
  76.  
  77.  rs.MoveFirst
  78.    Do While Not rs.EOF
  79.         Rb = Rb + 1
  80.         'Naziv = Latinica(Left(rs.Fields("Naziv"), 30))                              'Artikal naziv
  81.        Naziv = Left(rs.Fields("Naziv"), 30)                              'Artikal naziv
  82.        Kolicina = Format(rs.Fields("Kolicina"), "0.00")                            'Kolicina podatok
  83.        'Procent = Format(rs.Fields(4), "0.000")
  84.        Cena = Format(rs.Fields("Ed_Cena"), "0.00")
  85.         Printer.Print Space(LevMargin) & Rb & "." & Naziv
  86.         Vkupno = Format(rs.Fields("Vkupno"), "0.00")
  87.         VkupnaSuma = CDbl(VkupnaSuma) + Vkupno
  88.         Printer.Print Space(LevMargin) & Desno_Ravni(Format(Kolicina, "######0.00")) & Desno_Ravni(Format(Cena, "######0.00")) & Desno_Ravni(Format(Vkupno, "######0.00"))
  89.      
  90.     rs.MoveNext
  91.    Loop
  92.  
  93. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  94. Printer.Print Space(LevMargin) & "                   Celkem :    " & Desno_Ravni(Format(VkupnaSuma, "######0.00"))
  95. Printer.Print Space(LevMargin) & "                     Sleva  :    " & Desno_Ravni(Format(Rabat, "######0.00"))
  96. 'Printer.Print Space(LevMargin) & "                      DPH  :    " & Desno_Ravni(Format(Rabat, "######0.00"))
  97. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  98. Printer.Print Space(LevMargin) & "    Celkem k uhrade  :    " & Desno_Ravni((Format((CDbl(VkupnaSuma) - Rabat), "######0.00")))
  99. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  100. Printer.Print Space(LevMargin) & "Sazba   Zaklad            Dph     Celkem"
  101. 'Printer.Print Space(LevMargin) & "  0 "
  102. 'Printer.Print Space(LevMargin) & "  0 " & "             0.00            0.00          0.00 "
  103. 'Printer.Print Space(LevMargin) & "15 "
  104. 'Printer.Print Space(LevMargin) & "15 " & "             0.00            0.00          0.00 "
  105. 'Printer.Print Space(LevMargin) & "21 "
  106. 'Printer.Print Space(LevMargin) & "21 " & Desno_Ravni(Format(BezDDV(CDbl(VkupnaSuma), CDbl(21)), "#######0.00")) & Desno_Ravni(Format(PresmetkaDDV(CDbl(VkupnaSuma), CDbl(21)), "#######0.00")) & Desno_Ravni((Format((CDbl(VkupnaSuma) - Rabat), "#######0.00")))
  107. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  108.      
  109.        rs_DDV.MoveFirst
  110.     Do While Not rs_DDV.EOF
  111.        Printer.Print Space(LevMargin) & Format(rs_DDV.Fields(0), "#0") & Desno_Ravni(Format(CDbl(rs_DDV.Fields(2)), "#######0.00")) & Desno_Ravni(Format(CDbl(rs_DDV.Fields(3)), "#######0.00")) & Desno_Ravni(Format(CDbl(rs_DDV.Fields(1)), "#######0.00"))
  112.        rs_DDV.MoveNext
  113.     Loop
  114.  
  115. Printer.Print Space(LevMargin) & "-----------------------------------------------"
  116.  
  117. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Footer1")
  118. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Footer2")
  119. Printer.Print Space(LevMargin) & ReadIniValue(App.path & "\Setup.ini", "SmetkaSetup", "Footer3")
  120. Printer.Print Space(LevMargin) & "*******************************"
  121. Printer.EndDoc
  122.  
  123.  Rb = 0
  124.   PrintSmetkaOK = True
  125. PosError:
  126.     If Error <> "" Then
  127.        On Error Resume Next
  128.        PrintSmetkaOK = False
  129.        Exit Function
  130.     End If
  131.  
  132.  
  133.  End Function


Prilozi:
BazaRL.rar
Preuzimanja:261
Velicina datoteke:56.07 KB