Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190
iCentar » Racunari i oprema » Programirannje i baze podataka » Access » Kopiranje u viÅ¡e tablica odjednom
pmiroslav 15.02.2011 19:08
Predmet:Kopiranje u više tablica odjednom

Knjiženje u skladiÅ¡tu napravio sam na slijedeći način:

Imam tablice
Temp_Transakcije i Temp_Izlaz u koje kroe napunim formu frmIzlaz

Ispod dugmeta „Knjiženej“ koji mi podatke iz ovih privremenit tablica kopira u tablice
tblTransakcijeIzlaz
i
Izlaz

Kod je slijedeči:
PreuzmiIzvorni kôd (vbnet):
  1. Private Sub Command_Knjizenje_Click()
  2. On Error GoTo Err_Command_Knjizenje_Click
  3.  
  4.     Dim Baza As Database
  5.     Dim Sl_Transakcije As Recordset
  6.     Dim Sl_TransakcijeUpis As Recordset
  7.     Dim Sl_Upis As Recordset
  8.     Dim Sl_Ulaz  As Recordset
  9.     Dim rs As Recordset 'novo
  10.     Dim mySQL As String 'novo
  11.     Set Baza = CurrentDb()  ' Setovanje
  12.    
  13.     Set Sl_Transakcije = Baza.OpenRecordset("tblTransakcijeIzlaz", dbOpenDynaset) ' Tablica U koju se prebacuje
  14.     Set Sl_TransakcijeUpis = Baza.OpenRecordset("Temp_tblTransakcije", dbOpenDynaset) 'Tablica iz koje se prebacuje
  15.    
  16.     Set Sl_Ulaz = Baza.OpenRecordset("Izlaz", dbOpenDynaset) ' Tablica U koju se prebacuje
  17.     Set Sl_Upis = Baza.OpenRecordset("Temp_Izlaz", dbOpenDynaset) 'Tablica iz koje se prebacuje
  18.    
  19.    
  20.    
  21. If Sl_TransakcijeUpis.RecordCount > 0 Then
  22.     Sl_TransakcijeUpis.MoveFirst
  23.     While Not Sl_TransakcijeUpis.EOF
  24.         With Sl_Transakcije
  25.             .AddNew
  26.             ![IDTransakcije] = Sl_TransakcijeUpis![IDTransakcije]
  27.             ![Datum] = Sl_TransakcijeUpis![Datum]
  28.             ![IDdokumenta] = Sl_TransakcijeUpis![IDdokumenta]
  29.             ![BrDokumenta] = Sl_TransakcijeUpis![BrDokumenta]
  30.             ![IDKlijenta] = Sl_TransakcijeUpis![IDDobavljaca]
  31.             ![RadniNalog] = Sl_TransakcijeUpis![RadniNalog]
  32.             .Update
  33.         End With
  34.        
  35.         Sl_TransakcijeUpis.MoveNext
  36.         Wend
  37.  
  38. End If
  39.  
  40.     If Sl_Upis.RecordCount > 0 Then
  41.         Sl_Upis.MoveFirst            'otidi na prvi slog tablice UlazUpis
  42.         While Not Sl_Upis.EOF        '  vrti petlju za sve slogove
  43.             With Sl_Ulaz
  44.                .AddNew
  45.                ![IDTransakcije] = Sl_Upis![IDTransakcije]
  46.                ![SIFRA] = Sl_Upis![SIFRA]
  47.                ![Skl] = Sl_Upis![Skl]
  48.                ![Kolicina] = Sl_Upis![Kolicina]
  49.                .Update
  50.             End With
  51.     mySQL = "SELECT * FROM tblOtpremniceStavke WHERE Sifra =" & SIFRA 'Novo
  52.    
  53.     Do While Not rs.EOF 'Novo
  54.     rs.Edit
  55.     rs!Proknjizeno = 1
  56.     rs.Update
  57.     rs.MoveNext
  58.     Loop
  59.     rs.Close
  60.    
  61.    
  62.             Sl_Upis.MoveNext
  63.         Wend
  64.     Else
  65.         MsgBox "Nema podataka za knjiženje", vbInformation, "Upozorenje"
  66.         GoTo Kraj
  67.     End If
  68.     CurrentDb.Execute "DELETE*FROM [Temp_tblTransakcije]"
  69.     CurrentDb.Execute "DELETE*FROM [Temp_izlaz]"
  70.     DoCmd.Requery
  71.     MsgBox "KNJIŽENJE JE ZAVRÅ ENO, KARTICE SU AŽURIRANE", , "Obavijest"
  72. Kraj:
  73.     Set Baza = Nothing
  74.    
  75. Exit_Command_Knjizenje_Click:
  76. Exit Sub
  77.  
  78. Err_Command_Knjizenje_Click:
  79.  
  80. Select Case err.Number
  81. Case 3201
  82. MsgBox "Niste upisali podatak"
  83.  
  84. Cancel = True
  85. Case 3167
  86. MsgBox "Podatak je obrisan", , "Pokušaj ponovno"
  87. Case Else
  88.     MsgBox "Greska broj " & err.Number & vbCrLf & err.Description & vbCrLf & "u funkciji knjizenje()"
  89.     End Select
  90. Resume Exit_Command_Knjizenje_Click
  91. End Sub

Sada imam problem kako dodati i dio koji će mi joÅ¡ i u tablici tblOtpremnicaStavke u polju Prokljiženo 0 promjeniti u 1, kako bi i tu bilo obilježeno da je stavka proknjižene, a ujedno i dodati ID operatora koji je izvrÅ¡io promjene.

zxz 16.02.2011 00:00
Predmet:Re: Kopiranje u više tablica odjednom

Opet radis istu stvar prepisujes podatke iz tabele u tabelu: To za bazu nije nikad dobro. Zar nisi mogao napraviti u tabeli opciono polje.
Ako ti nije ono dovoljno mogao si dodati polje datum ulaza datum izlaza.
Da pretpostavim ti vjerovatno imas ulaz po nekoj prijemnici ili racunu odredjenu kolicinu robe e sad desi ti se da tu svu robu po istom papiru pravis izlaz. Onda da nebi unosio stavku po stavku ti sve kopiras u novu tabelu.
Ovo samo nagadjem ali cisto sunjam da ti treba to prebacivanje a da te ne pitam kako ces vratiti ako izvrsis pogresnu transakciju.

mySQL = "SELECT * FROM tblOtpremniceStavke WHERE Sifra =" & SIFRA 'Novo
set rs=baza(Openrecordset(SQL)
Do While Not rs.EOF 'Novo
rs.Edit
rs!Proknjizeno = 1
Rs!Operator=Forms![frm_Ulaz]![Korisnik]
rs.Update
rs.MoveNext
Loop
rs.Close

pmiroslav 16.02.2011 21:51
Predmet:Re: Kopiranje u više tablica odjednom

Poslušao sam savjet i preradio bazu, tako da sada imam jednu tablicu za transakcije i jednu tablicu za ulaz i izlaz. Stvarno je tako bolje.
Također i sada iz formi za ulaz i izlaz upisujem direktno u tablicu tako da nema kopiranja iz privremene tablice kao Å¡to sam prije dao u primjeru.
Jedino još uvjek neznam riješiti kako da kada popunim formu frmIzlaz i njenu subformu da mi se u tablici tblProdajaStavke polje Proknjiženo, datum i operID popune za šifre koje sam upisao.
Prilozi:
Prodaja_2.rar (Velicina datoteke:150.74 KB)

zxz 16.02.2011 21:58
Predmet:Re: Kopiranje u više tablica odjednom

Evo ja cu ti dati jedan prost primjer.
Da ti dam bazu na papiru odnosno spisak. Sta bi uradio. nebi prepisivao garan.
Vjerovatno bi samo olovkom cekirao proknjizene. U bazi svaka transakcija podataka kodom steti bazi jer to je ogroman broj podataka koji se pise i brise. Ako stvarno imam potrebu za tim onda pravim kodom privremenu mdb te u njoj smijestam podatke. Nakon svake nove transakcije brism mdb i pravim novu.
Obino joj dam ime temp.tpr
ovo cu pogledati pa ti javim.

zxz 17.02.2011 00:37
Predmet:Re: Kopiranje u više tablica odjednom

Ti imas ovdje dvije zasebne cjeline i tako trebas gledati.
To su:
Skladista
Prodaja

Za skladista sam ti napravio tabele. Vjerovatno jos ponesto treba ali srz je tu.
Ostavi sada ovaj drugi dio.
Cak ga mozes raditi kada ovaj zavrsis.
Za prodaju trebas imati objekat u objektu isto imas magacin robe i tu robu prodajes.
Moguce da prodajes direktno iz ovih magacina ali opet to ostavi za sada lakse ces raditi.
Jos da te pitam ovo:
Imas tabelu vrste transakcije i u njoj:
Dokument
Inventura
Primka
Predatnica
Povratnica
Izdatnica
Otpremnica
Storno

e sad mene interesuje kakva je razlika izmedju ovoga dvoga:
Izdatnica
Otpremnica
Prilozi:
magaza.zip (Velicina datoteke:59.59 KB)

pmiroslav 17.02.2011 07:15
Predmet:Re: Kopiranje u više tablica odjednom

Citiraj zxz:


Jos da te pitam ovo:
Imas tabelu vrste transakcije i u njoj:
Dokument
Inventura
Primka
Predatnica
Povratnica
Izdatnica
Otpremnica
Storno

e sad mene interesuje kakva je razlika izmedju ovoga dvoga:
Izdatnica
Otpremnica


Imam tablicu koja se zove tblTransakcijeVrsta i ima je i u primjeru koji sam dao.

Izdatnica je trebovnica, zanči dokunet kojim se izdaje materijak u peizvodni pogon, a otpremnica je u biti Račun.

Kiro 17.02.2011 09:47
Predmet:Re: Kopiranje u više tablica odjednom

Citat:
Izdatnica je trebovnica
Vjerujem da si se pogreÅ¡no izrazio ali nije tačno gore citirano, to su dva dijametralno suprotna pojma.
Trebovnica (trebovanje) = interna narudžba. Dokument kojim jedan poslovna jedinica traži-trebuje-naručuje neÅ¡to od druge poslovne jedinice.
Izdatnica = interna otpremnica također interni dokument kojim jedna poslovna jedinica izdaje-otprema neÅ¡to drugoj poslovnoj jedinici.
Ima još naziva za internu dokumentacije ali nije sad bitno.
To se zove kolanje poslove dokumentacije.
RjeÅ¡enje bi se čini mi se samo nametnulo kada bi se nacrtao dijagram poslovnog procesa, odnosno Kolanja poslovne dokumentacije, imao sam negdje jedan zgodan primjer sa faksa pa ako ga nađem kačim.
Na taj način sam nekad prije i sam rjeÅ¡avao svoje probleme.
Eto samo mala sugestija jer mi se čini da se vas dvojica ne razumijete baÅ¡ najbolje.

Link ka dijagramima poslovnih procesa

pmiroslav 17.02.2011 10:28
Predmet:Re: Kopiranje u više tablica odjednom

Kod mene u firmi Trebovnicu zaovemo Izdatnica, neznam dali je to ispravno ali tako je.
Imamo dvije vrste Izdatnica (Trebovnica). Jedna je za režijski (kancelarijski) materijal na koju se može pisati više stavki, a druga je za sirovine u proizvodnji, na kojoj je samo jedna stavka,
Prilozi:
IzdatnicaRM.jpg (Velicina datoteke:137.04 KB)
IzdatnicaSirovina.jpg (Velicina datoteke:198.16 KB)

pmiroslav 17.02.2011 11:16
Predmet:Re: Kopiranje u više tablica odjednom

Ovo nije loÅ¡e, samo smo trebali otvoriti novu temu o tome jer će nam se sve pobrkati

zxz 17.02.2011 12:23
Predmet:Re: Kopiranje u više tablica odjednom

Meni nije ni bitno kako ces to zvati. Samo da ti znas sta ti je ulez robe a sta izlaz odnosno da je poznato onome ko radi na app. Ako mislis da nece znati treba u ovoj tabeli dodati polje sa ovim.