Oldal: 1 / 1
[Megolda] Változás követés dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 9., csütörtök 9:13
Szerző: Harsányi Zoltán
Sziasztok!
Segítségeteket kérném a következő problémám megoldásában!
Kérdés: megoldható-e, hogy bekapcsolt „változás követés” dátum és idő párosát a cellával azonos sor (jelen esetben a B2 cella) távolabbi celláiba automatikusan kiírassam. Valódi igénylési dátum, időkénti használat céljából.
További nehézség, hogy különböző Office rendszereket használunk; ezért az XLS formátumra van szükség.
Üdv. Zoli
Re: A „változás követés” dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 9., csütörtök 12:10
Szerző: Zizi64
További nehézség, hogy különböző Office rendszereket használunk; ezért az XLS formátumra van szükség.
...és akkor az a megoldás, hogy tovább nehezítitek a saját dolgotokat egy soha nem szabványosított, mára már sokszorosan elavult ( már a MS által sem támogatott), rengeteg régi, nem dokumentált al-verzióval rendelkező fájlformátumot használatával, ahelyett, hogy mindenhol az ingyenes LibreOffice-t telepítenétek, és a nemzetközi szabvány ODF fájlformátumokat használnátok?????????????????
Re: A „változás követés” dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 9., csütörtök 13:00
Szerző: Harsányi Zoltán
"tovább nehezítitek a saját dolgotokat"
Sajnos nincs beleszólásom (nem vagyok az IT vezető) ki, mivel dolgozzon. A mérésügyi területen ketten dolgozunk 4 gépet érintően, csak az LO-t használjuk. Én személy szerint nagyon meg vagyok elégedve vele (már használtam az OpenOffice 1-s verzióját is anno).
A probléma felvetésemhez visszatérve – ha csak ODF lenne a fájl formátuma – megoldható lenne a dátum idő kinyerése?
Üdv. Zoli
Re: A „változás követés” dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 9., csütörtök 14:16
Szerző: Zizi64
ha csak ODF lenne a fájl formátuma – megoldható lenne a dátum idő kinyerése
Szinte biztos vagyok benne, hogy igen.
De abban is szinte biztos vagyok, hogy csak API alapú makróval tehető ez meg.
Az meg egészen biztosan nem fog futni MS-Office-ban.
Sajnos most nincs időm a megfelelő API hivatkozásra rákeresni, és a makró kidolgozásával foglalkozni.
A változáskövetés egész biztosan a fájlba van beágyazva, hiszen azt az is láthatja, akinek átküldöd. Akkor pedig - ha van API hivatkozás hozzá (szinte mindenhez van) -, akkor azt el is lehet makróval érni. Ha el lehet érni, akkor fel is lehet dolgozni.
Re: A „változás követés” dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 9., csütörtök 21:46
Szerző: Zizi64
Két rossz hírem van:
- ma este megnéztem az API-t, de nem találtam meg, hogy hogyan lehet a változáskövetést elérni a függvényein keresztül. (lehet, hogy nincs rá mód, de lehet, hogy csak az én képességeim nem elegendőek hozzá).
- konvertáltam a fájlodat .ods formátumba, és a .zip archívumban megnézem, hogy milyen formában is szerepelnek benne a változtatások. Nos, a content.xml fájlban vannak benne a bejegyzések a változásokról. A rossz hír ezzel kapcsolatban az, hogy ha folyamatosan be van kapcsolva a változáskövetés, akkor az folyamatosan, fölöslegesen és ez veszélyesen megnöveli a fájlméretet, és előbb-utóbb belassuláshoz, esetleg összeomláshoz vezet.
Íme, a most még nem túl nagy fájlod változáskövetés tartalmának egy része .odt-be átemelve, csatolmányként, mert a Fórum csak 60000 karakternyi választ engedélyez bevinni - hozzászólásonként - egyszerű szövegként:
Ott van benne, hogy: ki, mikor, mit változtatott.
Más szavakkal:
néha el is kéne fogadni a változtatásokat, hogy az azokkal kapcsolatos bejegyzések eltűnjenek a fájlokból, és hogy csak a változtatott értékek maradjanak benne a legutóbbi állapotukban.
Re: A „változás követés” dátum és idő párosának kinyerése
Elküldve: 2021. szeptember 10., péntek 8:49
Szerző: Harsányi Zoltán
Szia Tibor!
Nagyon szépen köszönöm az után járásodat (API keresgélést). A pontosabb labor statisztikához szerettem volna használni az adatot, manuálisan most is így használom.
"Más szavakkal:
néha el is kéne fogadni a változtatásokat, hogy az azokkal kapcsolatos bejegyzések eltűnjenek a fájlokból, és hogy csak a változtatott értékek maradjanak benne a legutóbbi állapotukban."
Ha sikerül kiüríteni a táblázatot, azaz nem marad nyitott igény; olyankor szoktam az "Változás követés -> Kezelés -> Összes elfogadása" műveletet elvégezni.
Üdv. Zoli
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 10., péntek 10:32
Szerző: Zizi64
Azt egyébként egy Listenerrel (Figyelővel) és API makrókkal meg lehet valósítani, hogy a figyelt cella sorába de másik oszlopba bevigye a program a figyelt cella változásának az idejét, és az adott LibreOffice példány aktuális Felhasználójának (vagy az operációs rendszer Felhasználójának) a nevét. Ez teljesen függetlenül működne a Változáskövetéstől.
De ez se működne olyankor, amikor Excelben van megnyitva a fájl - akármilyen formátumba is mented...
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 11., szombat 10:30
Szerző: Zizi64
Még rosszabb hírem van:
Az elfogadott változáskövetési bejegyzések is benne maradnak a fájlban, csak "Elfogadott" jelöléssel. Tehát a fájlméret veszélyes növekedése nem küszöbölhető ki a változtatások elfogadásával. Úgy tűnik, akkor csökken csak a fájlméret, ha ki is kapcsolod (legalább egy mentés idejéig) a Változáskövetést.
Jó hír az, hogy dolgozom - az általam értelmezett - problémán:
Figyelő (Listener) nélkül is van mód megoldani az előre meghatározott cellák tartalom-változás figyelését, és az adott sorban a távolabbi oszlopokba be lehet automatikusan íratni a változtató (a LO beállításaiban megadott) felhasználónevét és a változtatás dátumát.
Ha kész leszek vele, feltöltöm ide a módosított mintafájlodat a beágyazott makróval együtt.
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 11., szombat 12:08
Szerző: Zizi64
Itt a munka eredménye.
A színezett tartományokon fogsz aktivitást észlelni. Ha a rózsaszín cellákban változtatod az adatot, akkor a sárgás oszlopok azonos sorába beíródik a változtató LO-USER-neve, és a változtatás dátuma. Mindez kikapcsolt változáskövetés mellett, saját Listener írása nélkül. A makrót a Sheet Event-je ("változás a munkalapon" esemény) indítja és a működése be van korlátozva a rózsaszínnel jelzett tartományra. További szándékos korlátozás (így egyszerűbb a makró), hogy csak egy cellának a módosulása aktivizálja, tehát a "drag" és a többszörös cellába történő másolás, beillesztés NEM! Természetesen van mód azoknak az eseteknek a lekezelésére is, de az bonyolultabb.
Ez a StarBasic+API makró csakis LibreOffice (esetleg Apache OpenOffice) alatt működik akkor is, ha nem a dokumentumba van ágyazva, Excel alatt NEM!!!!
Feltételezem, hogy valami hasonló megírható Excelben, az abban található VBA-ban is... De ugyanazt az eseményt nem tudják használni a makró elindításához.
Sőt, lehet, hogy meg se engedi nyitni a fájlt az Excel, ha észleli, hogy idegen makró hivatkozás van benne.
Maga a makró-kód biztosan nem mentődik .xls formátumba, azt ki kell helyezned a LO program Standard könyvtárába, és újra elvégezni az Eventhez történő hozzárendelést:
Jobb klikk a Sheet Tab-on (fülön) - Sheet Events (Munkalap események) - Macro (Makró) - kikeresni a makró nevét a Standard könyvtár Moduljából - OK - OK
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 8:40
Szerző: Harsányi Zoltán
Zizi64 írta:Még rosszabb hírem van:
Az elfogadott változáskövetési bejegyzések is benne maradnak a fájlban, csak "Elfogadott" jelöléssel. Tehát a fájlméret veszélyes növekedése nem küszöbölhető ki a változtatások elfogadásával. Úgy tűnik, akkor csökken csak a fájlméret, ha ki is kapcsolod (legalább egy mentés idejéig) a Változáskövetést.
Jó hír az, hogy dolgozom - az általam értelmezett - problémán:
Figyelő (Listener) nélkül is van mód megoldani az előre meghatározott cellák tartalom-változás figyelését, és az adott sorban a távolabbi oszlopokba be lehet automatikusan íratni a változtató (a LO beállításaiban megadott) felhasználónevét és a változtatás dátumát.
Ha kész leszek vele, feltöltöm ide a módosított mintafájlodat a beágyazott makróval együtt.
Szia Tibor!
Nagyon szépen köszönöm a jó híreket és segítségedet.
Sajnos a letöltött fájl nekem nem akaródzik működni, egy adott sornál megáll. A fájlt a letöltési mappából indítottam. Csatoltan küldök képernyőképet.
Üdv. Zoli
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 9:28
Szerző: Zizi64
Olyan függvényt használtam, amit régebben írtam/találtam, és ugyan be is tettem a példafájlba - Get_LO_UserName() -, de nem vettem észre, hogy az további, csak az én MyMacros/Standard könyvtáramban létező függvényre hivatkozik. Most azt is bemásoltam a fájlodba.
Remélem, ezzel már működik. (Úgy látom, másra már nem hivatkozok. Sajnos nincs olyan gépünk, amin az általam írt, illetve az innen-onnan összeszedett "segédmakrók" ne lennének feltelepítve, így nem tudom igazán élesben kipróbálni a neked összeszedett makróköteget.)
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 9:56
Szerző: Harsányi Zoltán
Szia!
Sajnos most a 73-s sornál akad el: oConfigProvider = GetProcessServiceManager().createInstanceWithArguments(_
Továbbra is köszönöm a segítségedet!
Üdv. Zoli
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 13:42
Szerző: Zizi64
Kínomban átneveztem minden saját függvényt a mintafájlban "my" kezdetűre, de nálam így is működik
Win10x64Prof / LO 6.1.6 x64-en;
Win7x64Prof / LO 6.1.6 x64-en;
Win10x64Prof / LO 7.1.4 Portable x64-en is.
Pedig így biztosan nem a gépem MyMacros/Standard könyvtárából hívódnak meg a függvények, hanem innen a fájlból.
Milyen operációs rendszeren és milyen LO verzióval próbálod az általam feltöltött fájlt?
Akkor jelentkezik a hiba, amikor valamelyik cellát módosítod a rózsaszín tartományban, vagy más esemény váltja ki a hibaüzenetet?
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 13:46
Szerző: Zizi64
Ja, és Ubuntun is kipróbáltam, ott is fut a makró normálisan a LO 6.4.7.2 verzión.
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 16:17
Szerző: Harsányi Zoltán
Zizi64 írta:Kínomban átneveztem minden saját függvényt a mintafájlban "my" kezdetűre, de nálam így is működik
Win10x64Prof / LO 6.1.6 x64-en;
Win7x64Prof / LO 6.1.6 x64-en;
Win10x64Prof / LO 7.1.4 Portable x64-en is.
Pedig így biztosan nem a gépem MyMacros/Standard könyvtárából hívódnak meg a függvények, hanem innen a fájlból.
Milyen operációs rendszeren és milyen LO verzióval próbálod az általam feltöltött fájlt?
Akkor jelentkezik a hiba, amikor valamelyik cellát módosítod a rózsaszín tartományban, vagy más esemény váltja ki a hibaüzenetet?
A Vizsgálati igénylő_Zizi64_c.ods csatolmány már nem érhető el.
A korábban küldött képernyőkép Win7x64Prof / LO 7.2.0 x64-en készült.
Igen a (csak) rózsaszín cellák módosításánál dobja a hibát.
Itthoni környezetben is hasonló a hiba jelenség: LinuxMint 20.2 / LO 7.1.4 x64-en.
A hiba jelzést és a BASIC ablakot bezárva a dátum oszlop adata frissül, csak a felhasználóé nem változik.
Üdv. Zoli
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 19:53
Szerző: Zizi64
A hiba jelzést és a BASIC ablakot bezárva a dátum oszlop adata frissül, csak a felhasználóé nem változik.
...hát mert annak a bekérésénél áll meg hibával. Mondom: Ubuntun működik.
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 13., hétfő 21:15
Szerző: Zizi64
Sikerült találni egy "egyszerűsített" felhasználónév-bekérő rutint, amit ráadásul _ karakteres sortörés nélkülire átszerkesztettem - hátha az is problémát okoz nálad...
De az új bekérés alapvetően ugyanazt a "szolgáltatást" használja.
Itthon a LO 6.1.6 x64 és LO 7.2.0 x64 winPenPack portable verziókon Win10x64Prof.-on gond nélkül fut az új függvénnyel.
Az eredeti függvény a LO 7.2.0 alatt nekem is megállt: "kiegyenesítettem" a hosszúságuk miatt eltört sorokat, de úgy se megy.
De az új myGet_LO_UserName2() függvénnyel nálam a LO 7.2.0 is jól kezeli a makrót.
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 14., kedd 6:50
Szerző: Harsányi Zoltán
Zizi64 írta:Sikerült találni egy "egyszerűsített" felhasználónév-bekérő rutint, amit ráadásul _ karakteres sortörés nélkülire átszerkesztettem - hátha az is problémát okoz nálad...
De az új bekérés alapvetően ugyanazt a "szolgáltatást" használja.
Itthon a LO 6.1.6 x64 és LO 7.2.0 x64 winPenPack portable verziókon Win10x64Prof.-on gond nélkül fut az új függvénnyel.
Az eredeti függvény a LO 7.2.0 alatt nekem is megállt: "kiegyenesítettem" a hosszúságuk miatt eltört sorokat, de úgy se megy.
De az új myGet_LO_UserName2() függvénnyel nálam a LO 7.2.0 is jól kezeli a makrót.
Vizsgálati igénylő_Zizi64_d.ods
Szia Tibor!
Ez az új verzió hibátlanul működik, valószínűleg az alsó vonal okozta eddig a gondot. Nagyon szépen köszönöm a kitartó munkádat!
Most azt tesztelem mi történik, ha valaki nem LO-al tölti ki a táblázatot (egyik kollégám gépén két féle Office található).
Üdv. Zoli
Re: [Megolda] Változás követés dátum és idő párosának kinyer
Elküldve: 2021. szeptember 14., kedd 20:22
Szerző: Zizi64
Collabora Office alatt és OpenOffice alatt elvileg kell működnie, talán még NeoOffice alatt is, de Excel alatt EZ A MAKRÓ biztosan nem fog működni, akkor sem ha .ods formátumban hagyod a fájlt.