Arkiv

Archive for the ‘howto’ Category

Lös problemen – prata med dig själv

Jag har lagt mig till med något jag först tänkte var en ovana men mer och mer kommit att se som någonting fiffigt. När jag letar efter något, och det gör jag ganska ofta, så brukar jag finna det direkt om jag bara säger: ”Har du sett min väska/kamera/telefon/tidning?” Hittills har jag bara gjort det när min sambo är hemma så att det faktiskt finns någon att ställa frågan till, men det kanske fungerar lika bra när man är ensam?

Och hur många gånger har det inte hänt att man frågot någon något, börjat förklara vad problemet är och känner hur allt plötsligt faller på plats innan man hunnit avsluta frågan?

Jag har vid en snabb sökning inte hittat något konkret vetenskapligt stöd för att det verkligen hjälper att artikulera sina problem högt, men det verkar samtidigt vedertaget att så är fallet. Alltså inte bara tänka tyst för sig själv, utan att uttala och höra orden. Det finns flera fördelar med att inte bara tänka tyst på sina problem:

  • När du säger något högt aktiveras andra delar av hjärnan än när du bara tänker någonting. Du tänker, talar, hör och kanske till och med gestikulerar problemet.
  • Genom att inte bara uttala dina tankar, utan dessutom grundligt förklara problemet måste du sammanställa allt du vet om problemet, och kan också lösgöra det i högre grad från till exempel den frustration du kanske känner över att inte lösa problemet.

Den romerske filosofen Seneca visste redan han att ett utmärkt sätt att lära sig är att lära ut. Få saker satt så säkert på tentorna som de grejer jag själv förklarat för klasskamrater när vi pluggat ihop. Inte bara hade jag haft tillfälle att verkligen fundera igenom problemet, jag hade dessutom redan övat på att förklara det på ett enkelt och tydligt sätt, så som examinatorn oftast ville ha det.

Men man behöver alltså inte prata med en riktig människa alla gånger för att få samma effekt, det går bra med ett husdjur, ett föremål eller en tänkt person. I programmeringskretsar kallas metoden ”rubber ducking” utifrån idén att man pratar till en badanka!

Om någon känner till en studie där man undersökt detta och fått något resultat, antingen att det fungerar eller inte, och gärna testat någon hypotes om varför, skulle jag storligen uppskatta ett tips. 🙂

Läs även andra bloggares åsikter om , , , ,

Annonser

Uppdatera SU24 för Z-transaktioner

När man utvecklar egna program är det viktigt att inte missa att lägga in relevanta behörighetskontroller. När detta väl är gjort måste SU24 uppdateras för Z-transaktionen så att behörighetskonceptet hålls ihop och är lätt att underhålla. De behörighetsobjekt som lagts till i programkoden måste också finnas i SU24 så att profilgeneratorn PFCG vet vilka objekt som ska läggas till i rollen när man lägger in Z-transaktionen i menyn i PFCG.

I det här exemplet gäller det en Z-transaktion där man lagt in en behörighetskoll i programkoden.

I SE93 kan jag se att behörighetskollen som lades in tittar efter objekt M_MATE_WRK och V_KONH_VKO:

clip_image002
Bild 1. SE93 – dubbelklicka på program

clip_image004
Bild 2. SE93

clip_image006

Bild 3. SE93

Nu vill jag uppdatera SU24 med dessa objekt på den här transaktionskoden, så att när jag lägger till den i menyn på en roll i PFCG, så lägger den automatiskt till de objekt man behöver för att köra transaktionen.

Starta transaktion SU24 i relevant klient.

Skriv i transaktionskoden och tryck Kör.

clip_image008

Bild 4. SU24

Den här transaktionen är tom sånär som på S_TCODE. Inga objekt föreslås när man lägger till den i PFCG, förutom S_TCODE så man alls kan köra igång transaktionen.

Tryck på ”Display <-> Change” (Ctrl + F1) clip_image010

Lägg till de två objekt som angavs i programkoden, med de värden som angavs där.

clip_image012
Bild 5. SU24

I det här fallet anger jag först M_MATE_WRK i rutan. Klicka ok. Dubbelklicka på objektet som dyker upp.

Jag anger 03 Display som förslagsvärde för fältet ACTVT eftersom det är vad som krävs i programkoden (se bild 2).

clip_image014
Bild 6. SU24

Tryck ok. Sen lägger jag till V_KONH_VKO. Dubbelklicka på objektet som dyker upp:
clip_image016

Bild 7. SU24

Fyll i värdena enligt programkoden igen.

Spara (och ev. transportera).

Nu när jag lägger till transaktionen i PFCG läggs objekten till automatiskt:

clip_image018
Bild 8. PFCG

Fortsätt underhålla rollen som vanligt.

Lite mer om SU24 här.

Läs även andra bloggares åsikter om , , , , ,

Kategorier:howto, jobb, sap Taggar:, , , , ,

Enkelt WordPresstips – prenumerera på en tagg

bigrssNär man läser många bloggar är det bekvämt att ha dem samlade på ett ställe. Kanske Google Reader, Netvibes, Streamy eller något annat. En smidig grej med WordPress-bloggar är då att man kan dra en ström från nästan vad som helst i bloggen, till exempel en tagg. Om man till exempel bara vill prenumerera på mina inlägg om ”jobb” kan man klicka på taggen ”jobb” och sen lägga till ”feed” sist i adressen.

https://spontanordning.wordpress.com/tag/jobb/feed

Tada!

Man kan förstås också se vad alla andra WordPressare skriver om en viss tagg, till exempel om jag vill se vad andra svenskspråkiga WP-bloggar skriver om ”idéer”:

Publika tags

På dessa sidor kan du också skriva ”feed” sist, eller klicka på RSS-knappen. En tagg som kan vara rolig att följa är till exempel engelska howto.

Läs även andra bloggares åsikter om , , , , ,

Kategorier:bloggande, howto Taggar:, , ,

Dropbox tips & tricks

Jag vet inte vad det är med Dropbox som gjort mig så förtjust. Att just flytta filer mellan datorer gör man ju ganska lätt även med till exempel Gmail. Men jag gillar känslan, enkelheten och – om man installerar programmet – att ha mappen direkt framför sig på datorn. Och att få url:er till det man laddar upp, så det blir smidigt som hostingtjänst. Versionshanteringen på dokument och delade mappar gör det fiffigt för samarbeten. Dropbox finns för Windows, Mac & Linux. Ett gratiskonto ger 2 GB utrymme och joinar du med min länk får du 250 meg extra (och jag också!).

I skrivande stund finns det ingen iPhone app men jag har hört att det är på gång. Dock har de ett bra webinterface för iPhone redan nu.

Jag tänkte dela med mig av några sköna ”hacks” jag hittat också:

Läs även andra bloggares åsikter om , , , ,

Kategorier:howto, jobb, teknik, webb Taggar:, , ,

Spåra behörighetsproblem med system trace – ST01

När man utvecklar behörighetsroller är chansen stor att man får göra något man inte exakt har gjort förut. Mängden kombinationer av värden på olika behörighetsobjekt kan kännas nära nog oändlig. Standardkollen SU53 är bäst för att avslöja de riktigt små felen. Och i synnerhet när problemet inte egentligen är behörigheter brukar man kunna få nonsenssvar från SU53.

En system trace med ST01 däremot ger mer information och kan i behörighetssammanhang användas både för att bygga upp roller (”vilka behörigheter behövs när jag klickar mig igenom en viss process?”) och för att felsöka vid de första testerna, eller närhelst något faller på ditt bord som folk misstänker är behörighetsrelaterat.

Här följer en grundläggande guide i hur man gör, helt enkelt.

Starta ST01 i den klient där du vill spåra problemet.

clip_image002

Börja med att kryssa i vilka trace components som ska loggas. Jag brukar välja Authorization check samt RFC Calls men de senare är mest relevanta vid portalproblem vad jag vet.

Ställ sedan in general filters.

clip_image004

För att logga en specifik användare, fyll i ”trace for user only”. Tryck ok.

Starta trace:

clip_image006

Användaren som du loggar går in i systemet och gör det som ska loggas. Om jag testar själv brukar jag köra sessionerna simultant.

När du vill titta i loggen, tryck Analysis:
clip_image008

Ange User name för den användare vars logg du vill se. Ange ett tidsfönster i From & To, det bör vara så precist som möjligt. Tryck sen ”kör”:

clip_image010

I loggfilen får du information om alla behörighetskollar som gjorts:

clip_image012

På översta gula raden ser man ”Transaction VD01”, det betyder att behörighetskollen gjordes i transaktionen VD01.

Den ljusgröna raden visar Type = Auth, dvs att det är en behörighetskoll, vilket behörighetsobjekt som kollades, här S_PROJECT, och värdena i fälten som programmet efterlyste. Eftersom raden är ljusgrön istället för mörkgrön vet vi att behörigheten nekades. Mörkgrön betyder att användarens behörighet godkändes.

clip_image014

Exempel på både behörighet given och nekad.

System trace är väldigt användbart för att snabbt lokalisera fel men man måste samtidigt själv utvärdera resultaten man får. Att en viss behörighet inte ges behöver inte nödvändigtvis vara fel. Man måste försöka klura ut vilka behörighetsobjekt som är relevanta i det aktuella fallet. Där hjälper det också att snäva in rapporten så mycket som möjligt tidsmässigt, så att man försöker hitta exakt det ögonblick där något blir fel.

För lite mer detaljer om en behörighetskoll kan man dubbelklicka på den aktuella raden. Man får då upp:
clip_image016
Här ser man i klartext att behörighetskontrollen lyckades.

clip_image018

Vill man spara loggfilen kan man till exempel exportera till Excelfil (spreadsheet) eller som XML.

Läs även andra bloggares åsikter om , , , ,

Evernote & Delicious på jobbet

EvernoteEftersom det inte är högtryck på jobbet precis just nu tar jag mig tid att försöka dokumentera det jag håller på med aningens mer systematiskt. När jag googlar efter lösningar på problem så är det ju fiffigt att spara användbar information någonstans. Tidigare var det med på Delicious (se mina senaste bokmärken i spalten till höger) men numer använder jag oftast Evernote, som sparar hela utdrag till ett konto jag också synkar med min iPhone. Text & foton går lika bra, man kan både spara material i olika ”notebooks” samt tagga det.

Läs även andra bloggares åsikter om , , , , ,

Kategorier:howto, jobb, sap, webb Taggar:, , , , ,

Det mystiska P_ORGIN

Igår byggdes det lite på Compensation Managementroller igen. Min kollega testade en roll i portalen och fick ett meddelande om behörighetsfel. En system trace avslöjade att P_ORGIN efterlyste värdet ”P” på fältet AUTHC. Men i dokumentationen över möjliga värden på AUTHC finns inte P med, så vad det egentligen är tänkt att göra var lite av ett mysterium. Men vem har sagt att det inte är spännande att jobba med SAP? Och med ett P på plats fungerande det bra.

Efter lite googlande hittade jag också meningen med P:t, här.

To create or change records on infotype Compensation Process (0759), two new authorization levels have been added for authorization object P_ORGIN:

  • P, for planning and submitting compensation processes,
  • A, for approving or rejecting compensation processes.

Men det inte den information man får upp i hjälpdokumentationen inne i systemet.

Kategorier:howto, jobb, sap Taggar:, , , , , ,