Oldal: 1 / 1

Makrók

Elküldve: 2016. június 22., szerda 0:04
Szerző: partyone
Sziasztok!
MS Access után szeretnék áttérni a Base használatára, amihez szeretném a segítségeteket kérni:
- hogyan kell beállítani, hogy egy űrlapra beszúrt nyomógomb lenyomása esetén lefusson egy beállított makró?
- milyen paranccsal (és paramétereivel) tudom elérni, hogy nyomógomb lenyomása után adott adatok beírásra kerüljenek egy táblába (VBA: Insert Into)?
kb. "Vaj", "300 Ft", "Mai dátum" kerüljön be a Tranzakciók táblába "Termek_nev", Eladasi_ar", "Datum" -ként
- milyen paranccsal tudom törölni egy meglévő tábla adathalmazát (DELETE FROM)?
- milyen paranccsal tudom frissíteni egy űrlapra beszúrt listapanel adattartalmát (DoCmd.Requery)?

Segítségeteket előre is köszönöm!
partyone

Re: Makrók

Elküldve: 2016. június 22., szerda 6:17
Szerző: Zizi64
Üdvözöllek a Fórumon!
- hogyan kell beállítani, hogy egy űrlapra beszúrt nyomógomb lenyomása esetén lefusson egy beállított makró?
Sajnos a Base alkalmazást nem ismerem, és egyáltalán nem használom, így nem biztos, hogy amit írok, az valóban használható lesz a számodra. Feltételezem, hogy az Űrlapelemek (gombok, jelölőnégyzetek, választólisták) ugyanúgy működnek minden alkalmazásban, hiszen integrált irodai programcsomagról van szó.

- A Calc-ban, Writer-ben egyszerűen fel kell helyezned a munkafelületre a gombot. Ezt az Űrlapelemek eszköztárról teheted meg, mégpedig annak "Szerkesztő mód" állapotában.
- Ezután egy jobb klikkel a felhelyezett űrlapelemen (gombon) előhozhatod a lebegő menüt, amiből a "Vezérlőelem" ("Control") menüpontot választva beállíthatod annak tulajdonságait, illetve a másik fülön makrókat rendelhetsz a rendelkezésre álló eseménylista elemeihez. Például, hogy melyik makró fusson, "Egérgomb lenyomása" esetén (mármint: a vezérlőelem fölötti egérkattintás esetén).
- Ezután már csak ki kell választanod, hogy honnan származó (a dokumentumban, vagy a "Saját Makrók" tárban elhelyezkedő Modulok egyikében található) szubrutin legyen az, ami lefut.
- Végül ki kell kapcsolnod a Szerkesztőmódot, hogy a gomb működjön.

Re: Makrók

Elküldve: 2016. június 22., szerda 6:25
Szerző: Zizi64
Az itteni aláírásod:
OpenOffice 3.4.1 Windows 7
Miért ezt az ősrégi verziót használod (vagy: miért ezt írtad be az aláírásodba)?

Javaslom, hogy az Apache OpenOffice legújabb AOO4.1.2, vagy még inkább a LibreOffice legújabb Still, vagy Fresh változatát töltsd le és telepítsd. (Jómagam még a Still verzió használóitól is "konzervatívabb" vagyok: a cégnél és itthon is a LO 4.4.7 verziót használom még mindig. De az is jóval újabb a 3.4.1 verziónál.)
Az AOO és a LO egy-egy verziója gond nélkül telepíthető párhuzamosan is, sőt akár egyszerre is futhatnak (Calc, Writer, Draw applikációkkal próbálva), természetesen telepítéskor az alapértelmezett fájlkiterjeszés-hozzárendeléseket az időben később telepített szoftver veszi át, automatikusan.

Itt, a fórumon is sokkal nehezebb dolgod lesz egy ilyen régi verzióval, hiszen melyik felhasználó emlékszik már arra, hogy a régi verziónak mik voltak a speciális jellemzői, esetleg hibái...

De kipróbálhatod a nyílt forrású szoftvercsomagok hordozható változatát is, amit a Portable Apps oldalról tölthetsz le.

Re: Makrók

Elküldve: 2016. június 22., szerda 6:56
Szerző: Zizi64
- milyen paranccsal (és paramétereivel) tudom elérni, hogy nyomógomb lenyomása után adott adatok beírásra kerüljenek egy táblába (VBA: Insert Into)?
Azért is szúrtam be a programverziókról szóló hozzászólásomat, hogy tudj a két fő csomag (AOO - LO) létezéséről. Tudni kell azt is, hogy a LibreOffice fejlesztőcsapata jóval aktívabb, mint az AOO céges (jelenleg az Apache berkein belül dolgozó) "fejlesztőcsapata".
Emiatt az idegen fájlformátumokkal, illetve az MS VBA-val szembeni kompatibilitása jóval teljesebb, jobb a LibreOffice-nak - ami a Writer, Calc alkalmazást és azoknak a makróit illeti. (A Base komponenssel kapcsolatban megint csak nem tudok nyilatkozni.)

Viszont alapvetően eltér a MS és az AOO/LO programozási felülete, programozási lehetősége. Az AOO/LO esetében az API (Application Programming Interface) "parancsait" (függvényeit és eljárásait) kell megismerned, és a StarBasic-ből (vagy az egyéb támogatott programnyelvek egyikéből) meghívnod. Tehát a "tudás" nem a beépített Basic (StarBasic) programozási környezetbe, hanem egy külön, sok nyelvből, és "kívülről is" elérhető függvény és eljáráskötegbe van elhelyezve. Ez az API függvény- és eljárástár gyakorlatilag MINDEN beépített funkció elérését lehetővé teszi nem csak a kezelőszervek használata, hanem programvezérlés megvalósítása esetén is.

De a Base használatával kapcsolatban KONKRÉT és speciális tanácsot továbbra sem tudok adni. Ajánlom fórumtársunk (és Admin is egyben itt) Reizinger Zoltán könyvét a Base alapok elsajátításához:
http://libreoffice.hu/konyvek/