Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Word] Konekcija sa bazom

[es] :: Office :: Word :: [Word] Konekcija sa bazom

[ Pregleda: 3212 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon [Word] Konekcija sa bazom25.05.2006. u 12:31 - pre 187 meseci
kako cu da napisem macro da se word dokument konektuje na bazu i dobija podatke iz baze odredjene sql upitom,ili postoji drugi nacin!? hvala
 
Odgovor na temu

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2824
*.adsl.ticino.com.

ICQ: 46802502


+49 Profil

icon Re: [Word] Konekcija sa bazom25.05.2006. u 14:52 - pre 187 meseci
Mislim da ovo stvarno nema veze sa bazama podataka vec sa Microsoft Office paketom

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom26.05.2006. u 06:59 - pre 187 meseci
Postoji mogućnost da se podaci iz baze uvuku u Word koristeći Mail Merge. Ova opcije pogodna je ne samo za cirkularna pisama, nego i pojedinačne dokumente vezane sa bazom -npr. razne kataloge. Startuješ Tools/Letters and Mailing/Mail Merge i pratiš proceduru korak po korak.
U okviru procedure - korak 3- definišeš vezu sa bazom - Use names and addresses from a file or a database. koristeći Edit recipient list.... možeš da ograničiš koji zapisi iz baze treba da se učitaju (umesto WHERE uslova). U koraku 4 postavljaš polja iz baze na dokument - izaberi More items... da dobiješ spisak svih polja iz baze.
Detaljnije informacije možeš pronaći na netu npr.
http://office.microsoft.com/en-gb/assistance/HA010349201033.aspx










Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom29.05.2006. u 09:10 - pre 187 meseci
Da,da,za to vec znam,ali meni treba da se konektujem sa bazom iz worda,postavim SQL upit i dobijem trazene podatke. Mail Merge sve to cini ali mi nezadovoljava SQL upit.Ako je neko nesto slicno radio nek javi!!!!Hvala
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom29.05.2006. u 11:28 - pre 187 meseci
Neznam zašto je upit koje se formira kroz mail merge nezadovoljavajući da bi mogao da ti pomognem.
Naravno makro pruža veću fleksibilnost pa evo kod koji to radi. Prethodno je potrebno da dodaš referencu na Microsoft ActiveX Data Objects 2.8 Library (Tools/Reference iz VBA editora)

Code:

Option Explicit

Private Sub Popuni_Bookmarke()
' Popunjava bukmarke iz baze
' U primeru je Access  - promeniti parametre pristupa  za druge baze
' P.Jovanovic   29/5/2006
  
  Dim oConn As ADODB.Connection
  Dim sConn As String
  Dim oRS As ADODB.Recordset
  Dim sFileName As String
  Dim sName As String
  Dim sPhone As String
  Dim sFax As String
' Otvaranje konekcije
  sFileName = "E:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind.mdb "  ' Putanja do baze
  sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sFileName & ";Persist Security Info=False"
  Set oConn = New ADODB.Connection
  oConn.ConnectionString = sConn
  oConn.Open
' Ucitavanje podataka za upit
  Set oRS = oConn.Execute( _
    "SELECT ContactName, Phone, Fax  FROM Customers")

' Petlja za prolazak kroz ucitanje vrednost
 If Not oRS.EOF Then
      sName = "" & oRS("ContactName")
      sPhone = "" & oRS("Phone")
      sFax = "" & oRS("Fax")
 End If
 
 ' Zatvaranje konekcije
 oRS.Close
 Set oRS = Nothing
 oConn.Close
 Set oConn = Nothing
 
 ' Popunjavanje bukmarka
   ActiveDocument.Bookmarks("bmkFrom").Range.Text = sName
   ActiveDocument.Bookmarks("bmkPhone").Range.Text = sPhone
   ActiveDocument.Bookmarks("bmkFax").Range.Text = sFax
End Sub



Imaš puno primera i na Netu - pozivanje baze iz Worda, kao popunjavanje Word dokumenta iz aplikacije ili Access baze.

Zaboravih da kažem da prvo napraviš Word dokument sa tri bukmarka: bmkFrom, bmkPhone i bmkFax, pa da pozoveš ovaj makro da bi isprobao
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom29.05.2006. u 13:12 - pre 187 meseci
hvala vam puno,puno,puno!!!!!
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom31.05.2006. u 14:47 - pre 187 meseci
Set oRS = oConn.Execute( _
"SELECT CRVW.project_name, CRVW.item_type, CRVW.approved_date, CRVW.change_date, CRVW.change_issue, CRVW.change_number, exp_CRVW.completion_date, exp_CRVW.cost, CRVW.from_vendor, CRVW.required_date, CRVW.responded_date, CRVW.start_date, CRVW.status, CRVW.spec_section, CRVW.title, CRVW.to_vendor, PROJ.company_name, PROJ.job_number, PROJ.project_number, PROJ.project_title
FROM CRVW, Item, PROJ, VNMT
WHERE (ITEM.module_name=CNTE) And (CRVW.project_name=PROJ.project_name) And (CRVW.item_type=ITEM.acronym) And (PROJ.company_abbrev=VNMT.vendor_abbrev) And (CRVW.project_name=DEMO) And (VNMT.project_name='DEMO') Or (exp_ITEM.module_name Is Null) And (CRVW.project_name=PROJ.project_name) And (CRVW.item_type=TEM.acronym) And (PROJ.company_abbrev=VNMT.vendor_abbrev) And (CRVW.project_name=DEMO) And (VNMT.project_name=DEMO);
")


kako da postavim ovaj upit da bi funkcionisalo??????
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom01.06.2006. u 08:15 - pre 187 meseci
Komande se u VBA standardno pišu u jednom redu. Ukoliko komadu želiš da nastaviš u sledećem redu stavi se _ (underscore) na kraju reda. Dakle obavezno stavi _ umesto ; i probaj. Ukoliko je potrebno da sam upit pišeš u više redova podeli ga na manje stringove koje spajaš sa & pa _ za prelazak u sledeći red. Ukoliko želiš da ti upit bude čitljiviji u tekst upita možeš da ubaciš chr(13) - prelazak u novi red Dakle nešto ovako:
Code:

Set oRS = oConn.Execute( _
  "SELECT CRVW.project_name, CRVW.item_type, CRVW.approved_date, CRVW.change_date, " & _
  "CRVW.change_issue, CRVW.change_number, exp_CRVW.completion_date, exp_CRVW.cost, "  & _
  "CRVW.from_vendor, CRVW.required_date, CRVW.responded_date, CRVW.start_date, " & _ 
  "CRVW.status, CRVW.spec_section, CRVW.title, CRVW.to_vendor, PROJ.company_name, " & _
  "PROJ.job_number, PROJ.project_number, PROJ.project_title FROM CRVW, Item, PROJ, VNMT " & chr(13) &  _  
  "WHERE (ITEM.module_name=CNTE) And (CRVW.project_name=PROJ.project_name) And " & chr(13)  &  _
 " (CRVW.item_type=ITEM.acronym) And (PROJ.company_abbrev=VNMT.vendor_abbrev) And " & chr(13)  &  _
 "(CRVW.project_name=DEMO) And (VNMT.project_name='DEMO') Or (exp_ITEM.module_name Is Null) And " & chr(13) & _ 
 "(CRVW.project_name=PROJ.project_name) And (CRVW.item_type=TEM.acronym) And " & chr(13)  & _
 "(PROJ.company_abbrev=VNMT.vendor_abbrev) And (CRVW.project_name=DEMO) And (VNMT.project_name=DEMO) " _
)

sve ovo pod uslovom da ti je upit ispravan.
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom01.06.2006. u 11:59 - pre 187 meseci
Item cannot be found in the collection corresponding to the requested name or ordinal.

u pitanju je sybase, Adaptive Server Anywhere
uspevam da procitam podatke iz tabele jedne,ali da ih spojim ne .....Vec me boli glava od ovoga!!!! probala sam i sa izmenama u Tool\References,ali ne ide!!!!!
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom01.06.2006. u 13:26 - pre 187 meseci
to je error 3265
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom01.06.2006. u 14:45 - pre 187 meseci
Da li si probala neki krajnje jednostavan upit - da vidiš da li uopšte funkcioniše veza sa konkretnom bazom? Možda parametri nisu dobri?

Ako nisi probaj - pa javi.

Ako jesi probaj da debaguješ i vidiš gde je greška.

Uvedi jednu string promenljivu u kojoj ćeš da čuvaš upit - dakle kod bi bio:
Code:

Dim sSQL AS String 
sSQL = "SELECT"SELECT CRVW.project_name, CRVW.item_type, CRVW.approved_date, CRVW.change_date, " & _
  "CRVW.change_issue, CRVW.change_number, exp_CRVW.completion_date, exp_CRVW.cost, "  & _
  "CRVW.from_vendor, CRVW.required_date, CRVW.responded_date, CRVW.start_date, " & _ 
  "CRVW.status, CRVW.spec_section, CRVW.title, CRVW.to_vendor, PROJ.company_name, " & _
  "PROJ.job_number, PROJ.project_number, PROJ.project_title FROM CRVW, Item, PROJ, VNMT " & chr(13) &  _  
  "WHERE (ITEM.module_name=CNTE) And (CRVW.project_name=PROJ.project_name) And " & chr(13)  &  _
 " (CRVW.item_type=ITEM.acronym) And (PROJ.company_abbrev=VNMT.vendor_abbrev) And " & chr(13)  &  _
 "(CRVW.project_name=DEMO) And (VNMT.project_name='DEMO') Or (exp_ITEM.module_name Is Null) And " & chr(13) & _ 
 "(CRVW.project_name=PROJ.project_name) And (CRVW.item_type=TEM.acronym) And " & chr(13)  & _
 "(PROJ.company_abbrev=VNMT.vendor_abbrev) And (CRVW.project_name=DEMO) And (VNMT.project_name=DEMO) "
Set oRS = oConn.Execute(sSQL )  


Stavi breakpoint na liniju Set oRS ... i proveri šta se nalazi u sSQL promenljivoj (najlakše iz Imediate window otkucaj ?sSQL), proveri da li je to OK - probaj da tako dobijeni upit izvršiš iz sqlklijenta da vidiš rezultat.
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom01.06.2006. u 15:25 - pre 187 meseci
Veza sa bazom funkcionise,proverila sam to sa NAJJEDNOSTAVNIJIM UPITOM....gresku ne javlja nigde kad sam debagovala,ali kad pokrenem Run, javlja mi ERROR 3265. Ne znam u cemu je problem
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom02.06.2006. u 07:37 - pre 187 meseci
Kako ne javlja nigde kad si debagovala - da li to znači da je uradio ili je greška na nekoj drugoj liniji?

Da li si probala da izvršiš upit iz sSQL stringa direktno? Koliko sam shvation greška se najčešće javlja kod pogrešno ispisanih ili izostavljenih vrednosti polja. Možeš da probaš da dodaš ; na kraju stringa - ja mislim da ne treba, ali ne bi trebalo da smeta.

Možeš da pogledaš ovde
http://www.experts-exchange.co...bases/Q_21097010.html#11825437
kako da dodaš obradu greške i dobiješ jasniju informaciju o grešci.
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.static.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom02.06.2006. u 10:58 - pre 187 meseci
kako9 da izvrsim upit iz sSQL direktno?upit je u redu jer je preuzet iz jednog programa koji je povezan sa ovom mojom bazom i funkcionise,ali je najveci problem sto ja to MORAM da uradim u Word-u!!!!!!!!!!!!!!!!!!!
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom02.06.2006. u 11:26 - pre 187 meseci
Kad se program zaustavi na breakpointu - pre Set oRS = oConn.Execute(sSQL) -
u Immediate window otkucaj ?sSQL

Kopiraj dobijeni SELECT izraz (Copy),

Otvori SQL klijent za tvoju bazu i izvrši taj upit - Paste.

Ako ti jednostavni upiti rade, a imaš mogućnost da kreiraš objekte bazi možeš da napraviš view pa onda jednostavno SELECT .... FROM view


Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.static.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom02.06.2006. u 14:55 - pre 187 meseci
u sql klijentu upit funkcionise,pa sam problem resila sa wiew koji sam napravila u bazi! Ali nista ja bez vase pomoci! treba da uradim neki izvestaj pa mi neki podaci trebaju van tabele(kao sto ovaj program radi),ali ostali treba da ostanu u tabeli.postoji li neka metoda koja vraca tabelu sa podacima koje se nalaze u redu u tabeli gde i podatak koji sam izdvojila?
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom05.06.2006. u 14:10 - pre 187 meseci
Evo modifikovan kod koji popunjava tabelu umesto bookmarke. Pretpostavlja se da je tabela prethodno kreirana i da je prva tabela u dokumentu. Na osnovu toga nadam se da možeš da iskombinuješ šta ti treba sa bukmarcima i tabelom

Code:

Option Explicit


Private Sub Popuni_Bookmarke()
' Popunjava tabelu iz baze
' U primeru je Access  - promeniti parametre pristupa  za druge baze
' P.Jovanovic   5/6/2006
  
  Dim oConn As ADODB.Connection
  Dim sConn As String
  Dim oRS As ADODB.Recordset
  Dim sFileName As String
  Dim tbl As Word.Table
  Dim r As Integer
' Otvaranje konekcije
  sFileName = "E:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind.mdb "  ' Putanja do baze
  sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sFileName & ";Persist Security Info=False"
  Set oConn = New ADODB.Connection
  oConn.ConnectionString = sConn
  oConn.Open
' Ucitavanje podataka za upit
  Set oRS = oConn.Execute( _
    "SELECT ContactName, Phone, Fax  FROM Customers")

 Set tbl = ThisDocument.Tables(1)  ' Prva tabela u dokumentu
 r = 2                                        '  Preskace se prvi red tabele sa zaglavljem
' Petlja za prolazak kroz ucitanje vrednost
  Do While Not oRS.EOF
    tbl.Rows.Add                        ' Dodaje se novi red u tabeli 
    ' Upisuju se polja ako nisu null
    If Not IsNull(oRS("ContactName").Value) Then tbl.Cell(r, 1).Range.Text = oRS("ContactName").Value
    If Not IsNull(oRS("Phone").Value) Then tbl.Cell(r, 2).Range.Text = oRS("Phone").Value
    If Not IsNull(oRS("Fax").Value) Then tbl.Cell(r, 3).Range.Text = oRS("Fax").Value
    r = r + 1
' Sledeci
   oRS.MoveNext
 Loop

 ' Zatvaranje konekcije
 oRS.Close
 Set oRS = Nothing
 oConn.Close
 Set oConn = Nothing
 
End Sub


Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.static.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom06.06.2006. u 11:26 - pre 187 meseci
sve sam lepo u sql upitu uspela da skockam! Konacno sam dobila ono sto mi treba za posao!!!! Hvala do neba! Programiranje mi je losa strana!
 
Odgovor na temu

nensika
freelance web designer
beograd

Član broj: 95505
Poruke: 37
*.adsl.static.sezampro.yu.



+1 Profil

icon Re: [Word] Konekcija sa bazom12.06.2006. u 10:52 - pre 187 meseci
mogu li umesto bookmarka da koristim field,da ne bi svaki cas postavljala bookmarkove u Word
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2199
212.200.27.*

Sajt: www.gowi.rs


+96 Profil

icon Re: [Word] Konekcija sa bazom12.06.2006. u 11:41 - pre 187 meseci
Može i polje ili običan tekst ako imaš tačnu poziciju gde ćeš da smestiš. Bookmarkovi i jesu polja koja služe da označe poziciju nekog teksta. Pretpostavljam da imaš problem da se bookmark izbriše posle popunjavanja .

Probaj da Bookmark bude prazan - samo pozicija bez ikakvog teksta. U tom slučaju bookmark neće biti obrisan nakon popunjvanja ali ćeš morati da ručno obrišeš tekst koji je dodat iz baze.
Rešenje je da koristiš Template na osnovu koga se generiše dokument ili da se doradi kod tako da se menja tekst unutar bookmarka a ne popunjava ceo bukmark .
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

[es] :: Office :: Word :: [Word] Konekcija sa bazom

[ Pregleda: 3212 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.