Month: March 2006

Itt sincs, ott sincs

Megőrjít.
Van egy kliens gépem. Ezen akarok futtatni egy szkriptet, mely távoli AD szájtok felhasználóinál módosítana display nevet. (Vbscript + ADSI.) Az adatok Excel táblában vannak.
Lefuttattam az egyik szájtra, a nevek átíródtak. Megnéztem ADUC-ból, tényleg.
Lefuttattam ugyanazt a szkriptet a másikra, nevek látszólag átíródtak. ADUC – mégsem íródtak át. Átfutottam az összes DC-t, sehol sem íródtak át. Picit átírtam a szkriptet, hogy most csak lekérdezze az értékeket – és tényleg nem íródtak át. Beleraktam még vagy ötször a setinfo-t, biztos, ami kurvafix – és kiegészítettem azzal, hogy írás után olvassa is vissza ADSI-n keresztül az értékeket és írja ki fájlba. Szkript lefutott, és a megváltozott értékeket írta ki. Gyorsan ADUC – sehol sem volt változás. Site-site replikáció megrángatása, újból körbenézés, semmi. Lefuttattam a szkriptet csak olvasó módban – a régi értékek jöttek vissza.
Hihetetlen.
A kliens gépről egy gyors próba, ldp-vel megváltoztattam a távoli szájt felhasználójának az adatát – és így működött, tehát se jogosultsági, se tűzfal probléma nincs. Ha ugyanezt egy nyomorult háromsoros vbscript-ből csináltam, akkor bezzeg nem ment.
Bele fogok dilizni. Ez az egy lépés van hátra abból a holland projektből, melynek már a nevétől is feláll a szőr a hátamon. És itt, az utolsó lépésnél jön be egy ilyen X akta, amikor már nem vágyom másra, mint hogy lezárjam ezt a szutykot.

Miután jól kisírtam magam, nekiálltam gondolkozni. Mi lenne például, ha kitörölném a bűvös ‘on error resume next’ sort?
Hoppá. Rögtön az elején befigyelt egy hiba:

Run-time error ‘-2147016693 (8007200b)
Automation Error
The attribute syntax specified to the directory service is invalid

Na, vajon mi lehet ez? Erős a gyanú, hogy adathiba, hiszen a szkript más szájtra lefutott. Kezdjünk játszani. Első körben csak a displayname értékét írtam ki – nem volt hiba. Jött a keresztnév, nem volt hiba. Jött a vezetéknév – és vele együtt a hiba. Hmm… ennyire kényes lenne az az sn attribútum?
Ránéztem az excel táblára – és letéptem az első sor csempét. Az adott szájton nem mi adminisztrálunk és a fiúk nem vacakoltak, a teljes nevet a keresztnévhez írták – azaz az sn attribútumba üres mezőt kellett volna betölteni. Ettől borult meg a szkript futás közben – de az onerrorresumenext továbblökte, mintha mi sem történt volna. Nem is történt semmi. Kiírás sem.
Oké. Akkor tegyünk bele egy vizsgálatot és ha üres a mező, akkor a kérdéses mezővel ne történjen semmi, de a sor többi mezőjét írja ki. Jó lesz ez? Nem biztos. Lehet, hogy az ügyfél törölt egy értéket és szeretné, ha az el is tűnne az AD-ból. Jó, akkor írjunk ki egy “”-t.
Nos, aki azt hiszi, hogy az oChild.attributum = “” lesz a jó megoldás, az még menjen vissza egy kicsit a homokozóba. Ugyanis pont ez a forma adta a fenti runtime error-t.
Igenám, de akkor hogyan lehet törölni egy attribútum értékét? Gugli.
És végül itt van a megoldás. Annyira szép, hogy alig hiszem el.
Tudni kell, hogy az AD-ba lehet cseppeként is írni. Ilyenkor csak a megváltozott attribútum értéke utazik a dróton, azaz spóroltunk egy csomó sávszélességet. Cserébe kicsit bonyolultabb a szintakszis.
Ilyen: oChild.putex X, “attributum”, valtozo,
ahol az X a helyzet kulcsa. Ugyanis ha X=2, akkor kiírás következik, ha X=1, akkor törlés.
Tehát a kérdéses kódrészlet:

If Trim(Cstr(Cells(sor,1).value)) = “” then
oChild.putex 1, “displayname”, “”
else
oChild.putex 2, “displayname”, Trim(Cstr(Cells(sor,1).value))
EndIf

Dögi. Futtassuk meg.
Megint ugyanazt a runtime error-t kapjuk. WTF?
Nos, ismét jött egy kis Gugli – majd megint lekerült a falról egy sor csempe.
A putex-es verzió ugyanis tömböt kér paraméternek. Miért? Csak. Akkor, amikor törlök, akkor nem is igazán kell neki érték, a “” bőven megteszi. De akkor, amikor módosítok, akkor bizony tömbbe kell rakni a változót.
Így fog kinézni a sor:
oChild.putex 2, “displayname”, Array(Trim(Cstr(Cells(sor,1).value)))
És ez már tényleg működik.

Illetve…
Boldogan engedtem rá a felturbózott szkriptet a böszme nagy excel táblára – és pár perc múlva megint runtime error-t kaptam. Egy kicsit megrugdostam az asztallábat majd nekiálltam nyomozni. Hiába. Minden teljesen rendben volt. Kínomban kimásoltam a táblázatból a dn értéket, benyomtam az ldp-be – és megfeküdt az is tőle. Nocsak. Nézzünk be az ADUC-ba.
Basszus. Amíg szarakodtam a szkripttel, addig törölték a felhasználót.
‘On error resume next’ visszakapcsol. Anyátok.

Hogy is van ez?

A ma esti E12 webcast-on figyeltem fel egy szemléletbeli váltásra. Az előadó arra célzott, hogy a CAS-t (Client Access Server; activesync, owa, stb…) tegyük csak minél közelebb a Mailbox szerverhez, mert ugye RPC. Erre rá is kérdeztek a hallgatóságból, hogy biztosan nem DMZ? És az előadó megerősíttetett: az a válasz jött vissza, hogy az ISA2004/6 annyira hiperszuper biztonságos, hogy bátran berakhatjuk a CAS-t a belső hálózatra.
Ehhez képest a webcast menetrendben szerepel a közeljövőben egy olyan előadás, amely azt mutatja be, hogy mennyire előnyös ISÁ-val DMZ-ket kezelni.
Imádom, amikor összevesznek a kegyeimért az eladók a termékmenedzserek.

Közlemény

Most egy nagy titkot fogok elárulni: semmi közöm sincs az időjáráshoz. Nem én alakítom.
Azért tartom fontosnak ezt az év ezen időszakában leszögezni, mert pár nap múlva itt lesz a nemszeretett névnapom. Az egy dolog, hogy nem túlságosan tetszik a név. Sokkal durvább, hogy 19-én már reggeli közben meg kell erősítenem a lelkemet, hogy a nap során se az egyes családtagokat, se a kollégákat, se a barátaimat ne töröljem egyből képen, amikor már messziről somolyogva közelítenek és elsütnek valami ócska poént a zsákban melegről – mely szakállas poénhoz természetesen olyan jó képet kell vágni, mintha most hallottam volna először.
Ráadásul az időjárás miatt is izgulhatok. Ha tényleg megjön addig a tavasz, akkor nincs olyan nagy baj. Az emberek mosolyognak és azt mondják, tényleg. Ellenben ha kitart a tél a névnapomig, akkor botrány van. Akkor lapáttal kapom a beszólásokat. Hogy miért nem hoztam meleget. És lehet, hogy tényleg csak tréfálkozni akarnak, de nem lehet nem észrevenni az ingerültséget az emberek hanghordozásában.
Szóval leszögezem még egyszer: nem, nem én alakítom az időjárást.
Zsákom sincs és különben is, lyukas.

Nosztalgiát, igen, nosztalgiát hord a városban szerte a szél

Soha nem voltam igazán Piramis rajongó. Általános iskolás korban én inkább az Omegát favorizáltam a magyarok közül. Ennek ellenére 1978-ban, amikor 14 éves lettem, szüleim azzal jelezték, hogy érettnek tartanak, hogy kaptam egy jegyet az egri Piramis koncertre. (Bár nem mondták, de ez olyan búcsúzásféle is volt – elkerültem Barcikára és utána mindenféle városok, kollégiumok jöttek és már csak vendégként keveredtem haza.)
Mindez onnan jutott eszembe, hogy most véletlenszerűen választottam zenét és a Piramis első, 1977-es lemeze került a lejátszóba. Legalább húsz éve nem hallgattam ezt az anyagot.
A nosztalgia olyan elemi erővel terített le, hogy félretettem a Larson albumot és döbbenten néztem a plafont. Egy pillanat alatt újból a gyerekkori szobámban voltam. Épp most érkeztem haza az iskolából. A függöny által megszűrt fény élesen emelte ki a levegőben kavargó porszemcséket. A táskát belöktem a sarokba és rohantam az Europa Star kazettás magnómhoz, mert már előre be volt karikázva a tévéújságban, hogy a délutáni Tánczenei koktél vagy Popzene Sztereóban műsorokból mely számokat akarom felvenni. (Volt még a Melódiakoktél és a Slágermúzeum.) Ültem az íróasztal mellett, figyeltem a tévéújságot és hallgattam a zenéket. Akkoriban ugyanis ennyi volt a zene: minden nap 13 óra körül egy óra. (Illegális adókat nem hallgattam. Nem is tudtam róluk.) Annyira közel ültem a magnóhoz, hogy a melegedő bakelit egyedi szaga még mindig itt van az orromban. Az összes akkori előadó szorgalmasan nyomott zenéjét ismertem – és még ma is ismerem. Ahhoz, hogy az ember elkapja a Bűvész-t, meg kellett hallgatnia ötször a Savanyú a csokoládé-t vagy a Postakocsi-t. Ez volt a biznisz. És bár nem szerettem, de ezen a módon rögzült bennem a 77-es Piramis lemez is.
De ha egy hullám elindul, nem áll le könnyen. Ahogy meghallottam a “Mondj egy mesét” című számot, beugrott a hozzá tartozó klip is. Ez volt akkoriban a nagy szó, néhány zenéhez filmművészek mindenféle lila művészkedést párosítottak és már össze is állt az Egymillió Fontos Hangjegy. Emlékszem, mekkora hányingerem volt az előbb említett Piramis szám klipjétől: mindenféle eltorzított arcok vartyogtak eltorzított hangon… és akkor – emlékezés közben – megcsapta orromat a tévénk szaga.
Azt mondják, képre a legkönyebb visszaemlékezni, utána jön a hang, a sor legvégén pedig a szag van. Hát, én most elmerültem a szagokban is. A mi családunk tévéket illetően teljesen az élbolyban volt: már akkor volt színes tévénk, amikor sok családban még semmilyen sem. (Nagybátyám gátlástalanul csencselt az oroszokkal.) De mi, gyerekek, külön tévét kaptunk: egy szintén orosz minivizort. Akkora volt az egész, hogy éppen ráfért a 10*8 centis képernyő az elejére – de nekünk maga volt a csoda. Ha megágyaztunk estére, akkor a duplaágy beterítette a szobát és pont az íróasztalig ért. Hasravágtuk magunkat öcsémmel, bekapcsoltuk a tévét és 50 centiről néztük a hangyamozit. Na, ezért nem véletlen, hogy annak a készüléknek is rögzült a szaga.
És az íróasztalomnak is megvolt a maga aromája. A grafit, a radírok, a faragott ceruza semmire sem hasonlító illata, mindez megjött most hirtelen. Eszembe jutott a szürke Philips zsebrádióm – hogy én azt mennyire szerettem. Tanulás közben általában az szólt, halkan. (Mekkora nagy királyság volt a Kívánságműsor kettőtől-ötig; Orchideák, lila orchideák…) Időnként félrelöktem a tananyagot és elővettem kedvenc ásványaimat. Nézegettem, forgattam őket a – szintén orosz – kocka asztali lámpa fényében. Ezekről a kövekről mindig morzsolódott le egy kevés törmelék, így az asztalomnak nemcsak a szaga volt jellegzetes, hanem a tapintása is. Száraz, meszes szagok és a fényezett asztallapon szétszóródott karcos por. Melyhez hozzájött a Pajtás magazinok édeskés nyomdaszaga is. Mindig volt néhány az asztalomon – nagy rajongója voltam a lapnak. (Még verset is küldtem be – de az alkotásokat borítsa a feledés jótékony homálya.)
Végül vegyük hozzá a koktélhoz az égett mezei poloskák émelyítő mentolos-édes szagát. A fűtés ugyanis konvektoros volt és ezek a kis hülyék a parapetkéményen keresztül egészen a fűtőtestig bemásztak. Aztán amikor jött a fűtési időszak, bent égett az egész család. Minden évben. Idővel ez a szag teljesen belevette magát a szoba atmoszférájába.

Hosszú időbe telt, mire tisztázni tudtam magamban azt a hirtelen rohamot, mely arra a pár akkordra indult be bennem. Legalább egy órája próbálom kibontani ezeket az érzéseket, melyek akkor, pár másodperc alatt robbantak fel bennem.
Ne csodálkozz, hogy percekig tényleg csak a plafont voltam képes bámulni.

Jó?

Remélem, azon nem fogunk vitatkozni, hogy olyan fogalmak, mint jó vagy rossz, önmagukban nem léteznek. Nincs olyan, hogy valami egyértelműen jó. Nekem lehet, hogy jó, neked lehet, hogy rossz. Ami valakinek rossz, az egész biztosan másvalakinek jó.
Az a baj, hogy ennek ellenére olyan természetesen használjuk az ehhez hasonló abszolút fogalmakat, pedig egész biztosan nem ugyanazt értjük mögéjük.
Létezik olyan, hogy abszolút igazság? Ugyan, hogyan létezne. Hiszen valaki kell, aki értelmezi a tényeket és onnan már az objektivitásnak lőttek. Persze, lehet vitatkozni arról, hogy létezik-e valami, amit senkinek sincs lehetősége megtapasztalni – de ezt meghagyom másoknak. Én beérem azzal, hogy kinyírom az abszolút igazság fogalmát és helyére ültetem az abszolút őszinteségét. Ez ugyanis az, amikor azt mondom el, amit abszolút igaznak hiszek.
És ha már ilyen kinyírós hangulatomban vagyok, adok az abszolút értelemben vett jó/rossz fogalompárosnak is. Közlöm velük, hogy nem léteznek: mindenki, aki használja őket, igazából a jobb/rosszabb fogalmakat gondolja mögéjük.
Melyek viszont kegyetlenül szubjektívek.

© 2026 MiVanVelem

Theme by Anders NorénUp ↑