Prikazi cijelu temu 06.05.2012 22:27
Amelasar Van mreze
Clan
Registrovan od:07.04.2011
Lokacija:SARAJEVO


Predmet:Re: Radni nalog na osnovu dnevnog prometa
To sad ovako izgleda:

PreuzmiIzvorni kôd (Text):
  1. Function RadniNalog(Datum As Date)
  2. Dim Db As Database
  3. Dim Rs1 As Recordset, Rs2 As Recordset
  4. Dim SQL As String, DatumS As String
  5. Dim Suma As Currency, K As Currency, Ostatak As Currency
  6. Dim ID As Integer
  7. Dim Iznos As Single, Procenat As Single, Cijena As Single
  8. Dim BrKomada As Integer
  9.  
  10.  
  11. DoCmd.SetWarnings False
  12. DatumS = Format(Datum, "mm-dd-yyyy")
  13. SQL = "SELECT Sum( Razduzenje) AS Suma FROM tblPrometMP " _
  14.       & "WHERE DatumK=#" & DatumS & "#"
  15. Set Db = CurrentDb
  16. Set Rs1 = Db.OpenRecordset(SQL)
  17. Suma = Rs1!Suma
  18. Rs1.Close
  19. SQL = "SELECT * FROM TblRadniNalog WHERE Datum=#" & DatumS & "#"
  20. Set Rs1 = Db.OpenRecordset(SQL)
  21.  
  22. If Rs1.RecordCount > 0 Then
  23. Dim R As String
  24. R = MsgBox("Za datum:" & Datum & vbCrLf & "Nalog vec postoji." & vbCrLf _
  25. & "Hoete eli da uradite ponovo?  ", _
  26. vbYesNo + vbExclamation + vbApplicationModal + vbDefaultButton1, "NAPOMENA")
  27.  If R = vbYes Then
  28. SQL = "DELETE  * FROM TblRadniNalog " _
  29.  & "WHERE Datum=#" & DatumS & "#"
  30.  DoCmd.RunSQL (SQL)
  31.  ElseIf vbNo Then
  32.  Rs1.Close
  33.  GoTo Izlaz:
  34.  End If
  35. End If
  36.  
  37.  
  38. Rs1.AddNew
  39. Rs1!RadninalogID = DMax("RadninalogID", "tblRadniNalog") + 1
  40. Rs1!Datum = Datum
  41. ID = Rs1!RadninalogID
  42. Rs1.Update
  43. Rs1.Close
  44.  
  45. SQL = "SELECT * FROM tblArtikli ORDER BY MPC DESC"
  46. Set Rs1 = Db.OpenRecordset(SQL)
  47. Set Rs2 = Db.OpenRecordset("TblRadniNalogStavke")
  48. Do While Not Rs1.EOF
  49. Procenat = Rs1!ProcenatIsk
  50. Cijena = Rs1!MPC
  51. Iznos = Suma * Procenat + Ostatak
  52. K = Iznos / Cijena
  53. BrKomada = K
  54. Ostatak = K - BrKomada
  55. Unos:
  56. Rs2.AddNew
  57. Rs2!RadninalogID = ID
  58. Rs2!PC = Rs1!PC
  59. Rs2!ArtikalID = Rs1!ArtikliID
  60. Rs2!NazivArtikla = Rs1!NazivArtikla
  61. Rs2!JedMjere = Rs1!JedMjere
  62. Rs2!Kolicina = BrKomada
  63. Rs2!VrstaPekProizv = Rs1!VrstaPekProizv
  64. Rs2!PodvrstapekProizv = Rs1!PodvrstapekProizv
  65. Rs2!TezinaGotProizvoda = Rs1!TezinaGotProizvoda
  66. Rs2!VrstaUtrBrasna = Rs1!VrstaUtrBrasna
  67. Rs2!KolicinaUtrBrasna = Rs1!KolicinaUtrBrasna * BrKomada
  68. Rs2.Update
  69. Rs1.MoveNext
  70. Loop
  71. Izlaz:
  72. DoCmd.SetWarnings True
  73. Exit Function
  74. Kraj:
  75. End Function

A pozivam ovako:

PreuzmiIzvorni kôd (Text):
  1. Function UradiRN()
  2. Dim strSQL As String
  3. Dim rst As DAO.Recordset
  4.  
  5. strSQL = "SELECT * FROM QPrometMPzaRadniNalog ORDER BY DatumK ASC" 'DESC
  6. Set rst = CurrentDb.OpenRecordset(strSQL)
  7.  
  8. If rst.RecordCount > 0 Then
  9. rst.MoveFirst
  10. Do Until rst.EOF
  11. RadniNalog (rst!DatumK)
  12.  
  13. rst.Edit
  14. rst!Knjizen = True
  15. rst.Update
  16.  
  17. rst.MoveNext
  18.  
  19. Loop
  20. MsgBox "Podaci uspjesno obradjeni!", vbInformation
  21.  
  22. rst.Close
  23. Else
  24. MsgBox "Nema podataka za obradu!", vbInformation
  25. End If
  26. End Function

Voljela bih i to rjesiti. Mislim na taj pocetni record. Imam problema s tim i kad kreiram fakturu broj 1 = vise otpremnica pa kreiram jednu fakturu = posljednja +1.
Pozdrav, Amela