Oldal: 1 / 1

Szám kiíratása szövegként

HozzászólásElküldve: 2018. augusztus 27., hétfő 17:41
Szerző: machobymb
Sziasztok!

Writer-ben szeretném egy számított mező tartalmát kiíratni szövegként, mint Calc-ban a NumberText, MoneyText. Van erre lehetőség?

Üdv:
Laci

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. augusztus 27., hétfő 20:47
Szerző: Zizi64
Nem néztem még a nálam telepített hordozható 6.1.0-ban, hogy valóban benne van-e, de ígérték, hogy a 6.1.0-ban már benne lesz a funkció:
http://libreoffice.hu/10-ft-azaz-tiz-fo ... matikusan/

De itt is jelzik, hogy a writerben is használható a kiterjesztés, "G" (Graphite) típusú fonttal együtt működhet:
https://extensions.libreoffice.org/exte ... mbertext-1

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. augusztus 28., kedd 13:26
Szerző: Zizi64
Sajnos az első link alatti videó is csak azt mutatja, hogy hogyan MŰKÖDIK a dolog, de az nem, hogy hogyan kell létrehozni a szám- szöveg "értékpárt"... Viszont ott a hír alatt a hír közzétevőjétől megkérdezheted: hátha tudja...

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. augusztus 31., péntek 9:03
Szerző: machobymb
Nekem ráadásul Ariel betűtípusú szöveggel kell, hogy menjen (tudtommal az nem Graphite), mert egy munkahelyi sablonban ez van beállítva.

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. augusztus 31., péntek 13:10
Szerző: Zizi64
Hát... azt írta, hogy graphite kell... Az Arial-lal valószínűleg nem fog menni. De én a másikkal sem tudom működésre bírni egyelőre.

Én ilyenkor az alábbi irányok egyikébe szoktam elindulni:
- Megcsinálom abban az applikációban a dokumentumot, amiben rendelkezésre áll a funkció.
- Barkácsolok hozzá saját makrót.

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 1., szombat 12:36
Szerző: Zizi64
Itt egy próbálkozás makróval:

Numbertext Writerben.odt
(26.29 KiB) 16 alkalommal.

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 1., szombat 22:01
Szerző: Zizi64
Kicsit továbbfejlesztve:

Numbertext Writerben2.odt
(29.62 KiB) 17 alkalommal.


Most így néz ki a makró:

Kód: Egész kijelölése   KinyitásÖsszecsukás
REM  *****  BASIC  *****

Option Explicit

Sub KeyPressed(Event As Object)
   IF Event.KeyCode <> 1280 THEN Exit Sub

Dim oDoc as object
Dim sNum, sText, sName as string
Dim oForm, oCtrl, oFuncAcc as object
Dim aPassedArray as variant
Dim oUserDefProp as object
   
   oDoc = ThisComponent
   oCtrl = Event.Source.Model
   sNum = oCtrl.Text   
   oForm = oCtrl.Parent
   oFuncAcc = createunoservice("com.sun.star.sheet.FunctionAccess")
   aPassedArray = Array(sNum,"hu-HU")
   sText = oFuncAcc.callFunction("NUMBERTEXT", aPassedArray)
   oForm.getByName("txtOutput").Text = stext
   
   sName = "Mezo01_Szov"
   aPassedArray = Array(sNum,"HUF","hu-HU")
   sText = oFuncAcc.callFunction("MONEYTEXT", aPassedArray)
   oUserDefProp = oDoc.DocumentProperties.UserDefinedProperties
   oUserDefProp.setPropertyValue(sName,sText)
End sub

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 2., vasárnap 17:11
Szerző: Zizi64
Természetesen külső indítással bármilyen mezőnek az értékét ki tudod így szöveggel íratni, akár egyetlenegy, akár több darabról van szó. Vagy a mezők névgenerálását kell úgy irányítani, hogy a makróval meg tudd állapítani mely párok tartoznak össze ("Szoveg1" - Szam1"; "Szoveg2" - "Szam2"), vagy az összes névpárt hard-kódolnod kell a makróba. A gondot csak a makró indítása okozza: gombot kell feltenned a dokumentum felületére, vagy gyorsbillentyűt kell használnod, vagy saját menüpontot... és nem szabad megfeledkezned, hogy a megfelelő időben meg is nyomd/rákattints. Esetleg mentési, betöltési, vagy egyéb programeseményhez is rendelheted a makrót, de a mező értékének a változásához én nem tudtam rendelni eddig.

A lényeg: hogy a NUMBERTEXT(), MONEYTEXT() függvény működésre bírható Writerben is, "Graphite" betűkészlet nélkül is. A többi már csak programozási tudás kérdése.

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 7., péntek 12:11
Szerző: machobymb
Köszönöm a rengeteg belefektetett munkát. Mellékletként elküldöm, hogy mit szeretnék:
Beírom, hogy az első sorban lévő mezőbe (ledolgozott) mennyi napot dolgozik a dolgozó, majd kiszámítom a többi mező segítségével (ktavolsag, kkmdij, kodavissza, kledolgozott = ledolgozott), hogy mennyi térítési díj jár neki (kkifiz), és ezt szövegesen (kkifizszov, formátumkód: @[NatNum12]0) is kiírja.

A dátum mező frissül automatikusan, a többi F9-re sajnos nem. Meg azt tapasztaltam, hogy ha beállítom a térítési díj mező mezőre a számítást, akkor utána legközelebb az értéket látom csak, nem látom a képletet. Ez miért van vajon?

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 7., péntek 19:15
Szerző: Zizi64
Ha a valódi dokumentumod ettől nem sokkal bonyolultabb (értem ezalatt, hogy túl sok strukturált szöveg nincs benne), akkor a Calc-kal történő megvalósítást ajánlom elsősorban. Tudsz beírni egyszerűbb szövegeket és számokat, és sokkal jobban számol, mint a Writer. És még a NUMBERTEXT(), MONEYTEXT() függvény is működik benne. Csak azt kell meggondolni, hogy hogyan oszd fel a cellákat. Én az ilyen esetekben 0,75 cm széles oszlopokat csinálok, és ahol szélesebb hely kell, ott összevonok több cellát. Így a szövegeket, számokat 0,75 cm osztásközzel ("tabulátorral") tudom elrendezni.

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 8., szombat 22:59
Szerző: machobymb
A dokumentum nem sokkal bonyolultabb ennél, de később is szeretnék más dokumentumokat is hasonlóan megcsinálni, amiket eddig Microsoft-os Word-ben használtunk a munkahelyen, hogy egyszer csak ki tudjuk váltani, mivel előbb-utóbb szükség lesz rá, mivel nem vásárolhatunk és előbb-utóbb fontos lenne a "kifehérítés". Ehhez az általam használtakat megcsinálnám, de avége lehet, hogy az lesz hogy web-es alkalmazást írunk PHP-ban és template-ekkel kiváltjuk, vagy lesz új munkaidő nyilvántartó, amiből csak nyomtatni kell. De gondolkozok Java programon is, amennyiben a jelenlegi Writer-rel még kompatibilis a jOpenDocument kiegészítő (mezőket generálni, majd Java programon keresztül elérni).

Re: Szám kiíratása szövegként

HozzászólásElküldve: 2018. szeptember 9., vasárnap 7:34
Szerző: Zizi64
szeretnék más dokumentumokat is hasonlóan megcsinálni, amiket eddig Microsoft-os Word-ben használtunk a munkahelyen,


Mi régen a kalibrálási bizonyítványainkat készítettük Word-del (még a Word 6-os verzióval). A hozzá kapcsolódó számítások Excel 5-ben voltak kidolgozva. A bizonyítvány formázottan tartalmazta a kalibrált műszer és az etalonok adatait, a kalibrálás körülményeit, egyéb hivatalos adatokat normál szöveges formában; valamint a mérések (a kalibrálás) adatait táblázatos formában.
Aztán váltottunk: - akkor még OpenOffice-ra - de most már nagyon régen LibreOffice-szal dolgozunk.

A táblázatot eredetileg az Excel számításokból másolással emeltük át a szövegszerkesztőbe. De a munka jelentős részét a táblázatkezelőben kellett elvégezni: bevinni a mérési adatokat, megadni az éppen használt etalonok pontossági adatait, stb. Egy idő után rájöttem, hogy azt a minimális formázott szöveget be tudom vinni a Calc-ba is. Egy ilyen 3-4 oldalas dokumentumból egy oldal a megrendelés adatait, egy oldal az etalonok adatait és a kalibrálás körülményeit, egy oldal a kalibrálás táblázatos eredményeit, és egy opcionális oldal a kalibrálás adatainak grafikonon ábrázolt adatait tartalmazza.
Sőt: automatizálni (makrózni) is tudtam a szöveges jellegű adatok bevitelét adatbázis jellegű adathalmazokból - úgy a Vevőink, mint a kalibráló etalonjaink adataiból - a számításokat és adatformázásokat pedig - amit a Calc másik munkalapjain elvégzünk -, egyszerű hivatkozással juttatjuk a kinyomtatandó "végeredmény" (bizonyítvány) lapra. (A formázások alatt a számok tizedesjegyeinek megfelelő beállítását értem, amely tulajdonságot úgy tudtuk hivatkozni, hogy a számítások végén megfelelő tizedesjegyszámú szöveges adatokká konvertáljuk (dinamikusan, esetenként változó tizedesjegy számmal) a számokat, és annak az eredményét hivatkozzuk a fő lapon. Még a grafikon opcionális megjelenését/eltüntetését is makróval oldottam meg.)

Tehát, az a tény, hogy 3-4 álló A4-es lapon kvázi szöveges dokumentumot kell kinyomtatnom EREDMÉNYként, nem akadályozott meg abban, hogy ne a Szövegszerkesztőt, hanem egy másik alkalmazást (a Calc-ot) használjam hozzá. Ehhez még hozzászerkesztettem egy nyilvántartó makrórendszert is, illetve a Vevők és Etalonok adatainak karbantartó rutinjait is. Mindezt úgy, hogy a valódi ADATBÁZIS kezeléshez egyáltalán nem értek, és nem tudom használni Base-t.

Csupán arra a feltételezésre építettem az ötletet, hogy a CALC sokkal jobban tud szöveget formázni, mint amennyire a WRITER számolni tud.