1 INDHOLDSFORTEGNELSE SAMMENFATNING OG BIDRAG INDLEDNING PROBLEMFORMULERING METODE Prototypeudvikling...
|
|
- Stine Lone Thøgersen
- 8 år siden
- Visninger:
Transkript
1 1 1
2 1 Indholdsfortegnelse 1 INDHOLDSFORTEGNELSE SAMMENFATNING OG BIDRAG INDLEDNING PROBLEMFORMULERING METODE Prototypeudvikling BAGGRUND (DET EKSISTERENDE FRAMEWORK) JAMAICA OG DESIGNEREN Den domænespecifikke objekt model Business Objects Elementer Registration og Family Containment og Relation Andre relevante abstraktioner View Task Activity Center og User Role Event Method Configuration Den nuværende konfigurationsmodel og dens problemstillinger DESIGN OG IMPLEMENTATION AF FREEDESIGNER VISUAL STUDIO.NET DESIGN TIME MODELLERING VS. FREEDESIGNER OBJEKTAFHÆNGIG FUNKTIONALITET Canvas Dokumentation Halo metafor BUSINESS OBJEKTER Generisk BO vs. typificeret Flytning af BO er via drag-n-drop Forskellige views på et Business Object ELEMENTER Validering Stoplys metafor RELATIONER Master/Detail Relate to BO Relate to exisisting Navigation CONTAINMENT Hvorfor speciel visualisering af Containment og Relation? ALIASING OVERBLIK OG MODELNAVIGATION UML in Color Teksturer Statusbar
3 Indholdsfortegnelse MiniCanvas Navigation via MenuItem Subclassing MenuItem ToolTip information Modellayout TEKNISKE OG TEORETISKE OVERVEJELSER HVORFOR IKKE BARE TRADITIONEL UML? OMG s UML vs FreeDesigner UML profile OCL Domæne specifikke visuelle sprog (DSVL) USERCONTROLS VS. SHAPES C# PROPERTIES SOM KONFIGURATIONSSKABELON Navnekonventioner vs. Custom attributes Navnekonvention Custom Attributes Afkobling DEPACK, XML OG KODEGENERERING Database DELEGATES OG EVENTS DESIGN PATTERNS Generelt Singleton pattern Command pattern Decorator pattern Model-View-Controller pattern Observer pattern Relevante patterns jeg ikke fik implementeret Abstract Factory Composite Opsummering EVALUERING AF FREEDESIGNER MANGLER OG FORBEDRINGER LIGNENDE LØSNINGER MJØLNER, AST OG IP NAKED OBJECTS KONKLUSION REFERENCER FIGUR OVERSIGT BILAG
4 Sammenfatning og bidrag 2 Sammenfatning og bidrag Dette speciale samt et medfølgende prototypisk grafisk konfigurationsværktøj 1 bidrager med et UML inspireret grafisk konfigurationsinterface til Navisions Jamaica projekt. Selvom prototypen og specialet er blevet til med særligt henblik på Navisons ERP system, lader mange af ideerne sig umiddelbart overføre til UML modeller generelt samt andre ERP systemer og i det hele taget til domænespecifikke visuelle sprog og metamodeller. Et gennemgående tema i mine undersøgelser har været at finde frem til, hvorledes domænespecifikke metatyper (Business Objects) bedst muligt og mest intuitivt visualiseres og konfigureres. Min prototype FreeDesigner er et bud på dette. Modellen udvides udover den traditionelle UML opdeling i attributter og operationer til at håndtere elementer, som begrebet Containment, der dækker over en form for has-a aggregeringsrelationship, hvor min model grafisk afspejler dette domænespecifikke forhold mere direkte end den traditionelle UML diamant eller rombe. Modellen udvides endvidere grafisk i forhold til traditionelle relationer, hvor relationsattributter, i den udvidede model, grafisk/fysisk bryder ud af UML boksens grænser for derved at illustrere deres intentionalitet, involvering og rolle i relation til resten af modellen. UML stammer fra omkring og specialet og produktionen kan yderligere anskues som værende et mere moderne bud på hvorledes UML også kan repræsenteres. Specialet og produktionen fører en idé om at flytte al funktionalitet fra traditionelle toolbars, propertybox, input-felter/områder mm. til objekterne selv, til sit ekstrem: Der er ingen toolbars e.lign. i min løsning - alt er menuer bestemt ud fra konteksten. Der er lagt stor vægt på brugen af farver og farvemønstre i modelleringen med henblik på understøttelse af løsningens overskuelighed. Løsningens overskuelighed samt navigerbarhed er endvidere problemstillinger, der behandles i specialet. Specialet er således af særlig interesse for personer, der interesserer sig for domænespecifikke visuelle sprog, modellering af ERP systemer, UML samt 1 Vedlagt program på CD. 2 UML ( Det var i det år Grady Booch og Jim Rumbaugh fra Rational Software begyndte at forene Booch og OMT modellerings teknikkerne. UML s rødder går således længere tilbage i tiden
5 Sammenfatning og bidrag metamodeller generelt,.net/c# s grafiske udtryksmuligheder (GDI+) samt GUI design
6 INDLEDNING 3 INDLEDNING Enterprise Resource Planning (ERP) systemer udvikles typisk på baggrund af et stort framework. Dette framework tilpasses af partnere for at tilbyde skræddersyede løsninger til kunder. Det er ønskværdigt at gøre denne tilpasningsproces så nem og effektiv som muligt for disse partnere. En måde at gøre dette på er at give partnerne specialiserede modelleringsværktøjer. Nærværende speciale præsenterer mit forslag til et sådant domænespecifikt modellerings værktøj, hvor den grafiske notation er inspireret af UML, men indarbejder specifikke aspekter unikke for Navisions Jamaica-framework. Specialet centrerer sig således om Jamaica-designeren, domænespecifikke visuelle sprog (der sondres mellem to termer: domain specific visual languages [DSVL] og domain specific languages [DSL]), CASE-tools, programmeringsomgivelser, grafisk repræsentation og manipulation af data og søger at perspektivere disse op imod mit prototypiske konfigurationsværktøj og Navisions s ERP system Jamaica. 3.1 Problemformulering Navisions ERP løsning, som den fremstår implementeret som en integreret Visual Studio.NET løsning, konfigureres i dag ved hjælp af drag-n-drop mellem forskellige træstrukturer internt i Visual Studio.NET. Denne konfigurationsproces er besværlig og ikke specielt brugervenlig, og overblikket over konfigurationen er dårligt: I værste fald kan det praktisk taget være næsten umuligt at spore relationer mellem de forskellige deltagende (business) objekter i en konfiguration. Specialets problemfelt er i høj grad udsprunget af en generel fornemmelse af, at denne konfigurationsproces må kunne understøttes bedre. Jamaica består - forenklet set - af business objekter og elementer, der i Visual Studio.NET alle som en konfigureres via en og samme propertybox, hvilket bl.a. betyder, at fokus i konfigurationsprocessen konstant skifter frem og tilbage mellem objektet, der konfigureres og denne propertybox. Speciale samt produktion er mit bud på et mere intuitivt konfigurationsinterface/- værktøj, der fokuserer på overskuelighed og brugervenlighed, hvilket bl.a. er søgt opnået gennem implementation af en idé om at lægge al funktionalitet på de for brugeren tilgængelige objekter ingen propertybox, toolbars, knapper mm..net løsningen håndterer relationer på en måde, der gør det vanskeligt at finde frem til, hvilke objekter, der er forbundne. Mit mål har været at udvide den traditionelle UML model til at kunne håndtere og visualisere ovennævnte relationer som grafiske førsteklasses elementer, der entydigt og identificerbart fremviser deres relation til resten af modellen
7 INDLEDNING Et studiemæssigt delmål med specialet og navnlig produktionen af konfigurationsværktøjet FreeDesigner 3 har været at lære C# og.net frameworket at kende, hvorfor jeg også vil behandle specielle sprogkonstruktioner og designbeslutninger af særlig relevans for min løsning. På samme grundlag ønskede jeg i min løsning at inkorporere forskellige design patterns for at opnå større praktisk erfaring med dem. På den baggrund vil der i specialet være en diskussion af erfaringen med dette. 3.2 Metode Litteratur studie før og efter prototype I et indledende 4-ugers projekt skaffede jeg mig overblik over bl.a. Navisions Jamaica framework, forskellige typer CASE-tools, programmeringsomgivelser, grafisk repræsentation og manipulering af data. Med udgangspunkt i det nordiske Mjølner projekt [5] undersøgte jeg forskellige typer programrepræsentationer, herunder grammatikker og særligt abstrakte syntakstræer (AST) ([10], s.12), og hvorledes disse med fordel kunne bruges i forskellige sammenhænge. I den forbindelse konkluderedes det, at AST ikke passede godt som programrepræsentation for mit værktøj, eftersom AST med størst fordel benyttes til repræsentation af tekstuel information, men er mindre velegnet til at repræsentere grafik og layout. I forbindelse med udarbejdelsen af artiklen UML in an ERP environment (bilag [1]) så jeg på programmeringsparadigmet Intentional Programming ([1], Kapitel 11). Dette var et relevant og nyttigt paradigme for mit værktøj, idet man i en implementation af paradigmet (der i udstrakt grad var baseret på AST) demonstrerede dets styrke, der bl.a. bestod i, at der kunne benyttes domænespecifikke grafiske notationer. Denne (eneste) implementation af Intentional Programming hørte under et Microsoft projekt, der på trods af, at Microsoft havde en fuldt fungerende version, af uvisse årsager stoppede projektet 4. I 4-ugers projektet undersøgte jeg endvidere XML standarden XMI med udgangspunkt i Knight projektet (et whiteboard UML diagrammeringsværktøj) [16] og konkluderede, at XMI ikke ville være velegnet til mit værktøj 5, da XMI retter sig mod UML modeller og ikke diagrammer og mere specifikt er rettet mod udvekslingen af modeller mellem programmer mere end egentlig programrepræsentation. 3 FreeDesigner er navnet på mit tool ( Free fordi det ikke er integreret i Visual Studio.Net designer, fordi dette er navnet på den nuværende løsning) og er den betegnelse, jeg fremover vil benytte. 4 Krzysztof Czarnecki, medforfatter til Generative Programming [1], hævdede på OOPSLA 2002 konferencen at vide, at Microsoft eller en partner var ved at være klar med en kommerciel implementation af Intentional Programming. 5 Klaus Marius Hansen (fra Knight projektet) frarådede mig på NWPER at benytte XMI i mit værktøj, da jeg fortalte ham om det
8 Baggrund (det eksisterende framework) Min tilgangsvinkel til dette speciale har således i første fase (i form af et 4- ugers projekt [10]) været litterær, hvor jeg har opnået et overblik over Navisions Jamaica framework, CASE tools generelt og andre lignende løsninger som f.eks. UML, XMI, AST. Undervejs og efter konstruktionen af prototypen FreeDesigner har jeg deltaget i konferencerne NWPER 6 og OOPSLA , hvor artiklen UML in an ERP environment (bilag [1]) blev præsenteret på Workshop on Domain Specific Visual Languages. Herefter har jeg set på andre tools (f.eks. Naked Objets, Poseidon for UML) og læst yderligere litteratur, som jeg specialet igennem vil inkludere i diskussion Prototypeudvikling Da jeg har stået over for et helt nyt udviklings miljø (.NET) og et helt nyt sprog (C#) og fra bunden af har skullet udvikle et konfigurationsværktøj til et helt nyt framework (Jamaica), kan min metode bedst beskrives som eksplorativ. Ikke alle beslutninger i processen har været nøje velovervejet eller baseret på indgående viden, men netop været eksplorative og afprøvende i deres udgangspunkt. Visse (design-) beslutninger er blevet truffet udelukkende ud fra et ønske om at afprøve.net/c# s forskellige potentialer (f.eks. valgte jeg at implementere Custom Attributes til beskrivelse, af hvilke klasser, der skulle dekorere Elementer til trods for, at en løsning der benyttede navnekonventioner og reflection, allerede var implementeret og virkede primært for at stifte bekendtskab med Custom Attributes). Prototypen fungerer, og jeg har fået implementeret de idéer, jeg gerne ville. 4 Baggrund (det eksisterende framework) Mit speciale og mit modelleringsværktøj tager udgangspunkt i Navisions ERP framework og er et forslag til en forbedring af konfigurationsværktøjet til dette. En kort gennemgang af Navisions ERP system Jamaica er nødvendig, for at læseren kan forstå de dispositioner, designvalg mm., jeg har truffet. 4.1 Jamaica og Designeren I det følgende vil jeg kort søge at blotlægge den struktur, der ligger til grund for Jamaica-designeren. Overordnet set er Jamaica et framework, der sigter mod hurtigt og enkelt design af Enterprise-løsninger. Det sigter mod at understøtte modellering frem for kodning. Løsningen (som kunden/virksomheden ser den) er browser baseret og bygger på Microsofts.Net platform (C# og ASPX). Virksomhederne får en tilpasset udgave af systemet, som understøtter hverdagsrelaterede virksomhedsopgaver (lagerstyring, indkøb mm.). På abstrakt plan modelleres en løsning vha. domænespecifikke metatyper (se Figur 2) business objects som f.eks. Company, SalesOrder m.fl., der
9 Baggrund (det eksisterende framework) konfigureres i Visual Studio.NET med Elementer 8, der f.eks. kan finde ud af at beregne moms, addere samt mange andre virksomhedsrelevante funktionaliteter. Denne konfigurationsmodel (som gemmes i en database og som XML) kan kompileres af en specialdesignet kompiler, der ud fra denne metamodel bestående af metatyper genererer C#, SQL og ASPX sider, som virksomheden konkret kan benytte til f.eks. at registrere salgsordrer, udskrive fakturaer mm. Figur 1. Model for arkitektur og hvad der sker ved kompilation [9] Den domænespecifikke objekt model 9 I det følgende vil jeg kort og summarisk beskrive den domænespecifikke objektmodel. Behandlingen omhandler primært aspekter af modellen, som jeg 8 Termerne Element, Relation samt Containment har en speciel betydning inden for Jamaica frameworket og skrives alle med stort begyndelsesbogstav, så at de kan skelnes fra de mere generelle betydninger af ordene. Således alle Jamaica specifikke termer. 9 Denne gennemgang baserer sig i høj grad på [7] - 8 -
10 Baggrund (det eksisterende framework) har implementeret i prototypen FreeDesigner. Abstraktioner som Activity center, Task m.fl. har jeg udeladt Business Objects 11 Navisions ERP model tillader definition af business object (BO) klasser. Hver klasse konstrueres ved at beskrive et sæt af Elementer svarende til primitive konstruktioner i det underliggende framework. En måde at anskue dette på er at modellen tillader definition af vilkårlige klasser, men i stedet for at lade Integer og String udgøre primitiverne, som de f.eks. gør det i Javas model, udgøres de af primitive Elementer - Elementer som Address, Deadline, TotalInclVAT osv. Disse Elementer repræsenterer selve kernen i Navisions ERP viden som indkapsles i fundamentale byggeblokke kaldet Elementer. Elementerne har et antal foruddefinerede attributter, som skal konfigureres som en del af udviklingsprocessen [7]. Et BO er således en container for en samling data og funktionalitet og kan identificeres som et self-contained objekt (eller objekt med egen identitet i et modelleret domæne). Et BO kan være en kunde, en faktura el. lign [9]. BO er kan være hierarkiske i den forstand, at et BO kan være bygget op af andre BO er i ét niveau. Et BO findes på 3 forskellige abstraktionniveauer: Figur 2. Objektmodellen 1. BO Base: Det højeste abstraktionsniveau. Navision har identificeret/klassificeret 8-10 Baser, som rummer generel funktionalitet for de forskellige objekttyper, der tænkes specialiseret til specifikke BO Typer via nedarvning. Til en BO Base hører en konfigurationsskabelon, 10 For en grundigere analyse af objektmodellen og flere af dens facetter se [15] 11 Afsnittet er baseret på [8, s.12-17] og [9] - 9 -
11 Baggrund (det eksisterende framework) som definerer, hvilke Elementer, Tasks mm., en instans af et BO kan/må indeholde. Baser 12 : 1.1. Party kan repræsentere enkeltpersoner, kunder, organisationer mm. Ordet Party rummer sådan set sin egen definition. Et Party kan have forskellige roller (se 5.7 ) i forskellige situationer: I én situation kan et Party have rollen som køber og i en anden som sælger. Et Party kan eje Assets Asset indeholder de entiteter, der er relateret til et Party gennem en form for ejerskab. Assets kan indeholde andre Assets (f.eks. reservedele som dele af andet udstyr) Contract handler om aftaler mellem Parties. F.eks. købs- og salgsordrer, som er opbygget af LineItems LineItem er f.eks. hver linje i en salgsordre. LineItem er ofte defineret som værende afhængig (Containment) af en BO Contract, hvor BO Contract ejer BO LineItem. 2. BO Type: Kan højst nedarve fra én BO Base, som altså er superklasse til BO Typen. Typens primære formål er at danne grundlag for, at to BO s af samme type i hvert sit modul kan udveksle information/synkroniseres, hvis der er Elementer af samme type tilstede. En BO Type har ikke et fast sæt af Element typer knyttet til sig og er således uafhængig af Elementer og Modul. Typiske eksempler på BO typer er Customer, PurchaseOrder og PurchaseOrderLine. 3. BO Instance er en instans af Bo Type. En instans tilhører altid et modul og instantiering er kun mulig i kontekst af et Modul. En BO instans er defineret ved dets Type og Modulet, det tilhører. Bemærk, at en instans ikke er et objekt, men svarer til en klasse i OO sammenhæng Elementer Elementer (nogle gange kaldet attributter ) udgør de primære byggeklodser og indeholder en samling funktionalitet, som er designet specifikt til det enkelte Elements brug. Elementer er det, der definerer et BO s indhold og kan samles i Families, så de forskellige Elementer kender til hinanden og dermed kan arbejde sammen uden yderligere eksplicit modellering (se ). Eksempler på Elementer er DeliveryAddress og SalesOrderID, som er specialiseringer af de generiske og mere generelle Elementer (patterns) Address og Identification. Elementer eksisterer på tre abstraktionsniveauer analogt med BO: Base, Type og Instance. Alle disse størrelser kan sammensættes på en lang række forskellige måder, og denne aktivitet tjener til at skræddersy og konfigurere en løsning, der 12 De fire Baser, jeg har valgt at implementere
12 Baggrund (det eksisterende framework) svarer til den konkrete virksomheds behov og krav. Dette skridt kaldes konfiguration Registration og Family Registry 13 er et udmærket eksempel på, hvordan Elementer kan fungere og samarbejde. Registry er en samling af Elementer, hvis fælles formål er at registrere data om business events i et format, der passer til analyse og rapportering og en måde at vedligeholde historik, idet registreret data ikke længere kan ændres. Typisk bruges Registry Elementer i Contract BO er som f.eks. fakturaer (Invoice) og ordrer (Order). Disse BO er består typisk af en header og et antal lines en struktur, der afspejles af Registry Elementerne, som typisk udgøres af en total og en detail del (se Figur 3). Registry Elementer arbejder sammen om at registrere og udregne og er derfor tættere knyttet sammen end Elementer i al almindelighed. Dette opnås ved at lade disse Elementer tilhøre en Familie (Family), inden for hvilken Elementerne kender til hinanden. Et eksempel kunne være et moms og et sumtotal Element - begge fra Registration Familien - der som Familie placeres sammen på et SalesOrder BO. Fordi de tilhører samme Familie, kan et sumtotal Element finde ud af, at der også eksisterer et moms Element på samme BO og medtage dette i udregningen af summen. På konfigurationsniveau placeres Elementer fra samme Familie altså på et BO, som f.eks. SalesOrder, faktura e. lign. (Elementer fra en Familie kan placeres på mere end et BO, hvis disse er Contained LineItems ([14], s. 4)), og da Familie typen logisk set anskues som ét Element, forventes det, at alle Familiens (sub-)elementer ligeledes er til stede på det konfigurerede BO. Et Registration Element kan have tre forskellige roller: Total, Master og Detail. PriceTotal +PriceTotal 1 0..* PriceDetail +UnitPrice +Quantity Figur 3. Element base med Total og Detail repræsentation [14] Alle Detail Elementer har en modsvarende Total, der kan have Detail Elementer. Regler og semantik defineres i Element basen. Registration Master er en Registration Total med den yderligere status at fungere som Familiens overhoved (med ansvar for Familiens interne kommunikation mm.) af hvilket der kun eksisterer et pr. Familie[14]. 13 Registration er betegnelsen for problemet, der løses: Det at registrere data om business events - Registry betegner en konkret Familie af Elementer designet specielt med henblik på at varetage dette
13 Baggrund (det eksisterende framework) Containment og Relation Modellen tillader relationer mellem klasser. For at holde definitionerne objektcentreret defineres relationer som Elementer. Elementer, der repræsenterer forskellige roller i et binært relationsforhold, kan forbindes, og en til mange samt mange til mange relationer kan defineres. Containment er en speciel form for relation og har givet navn til Containments to generiske roller Master og Detail. Hvis et Master objekt i en Containment Relation slettes, slettes alle de indeholdte (contained) Detail objekter også. Betegnelserne Master / Detail benyttes endvidere om almindelige relationer, hvor Master Elementet betegner objektet med singulær kardinalitet og Detail Elementet multipel kardinalitet. Master/Detail forholdet for almindelige relation har ikke samme slette semantik som i tilfældet med Containment. En af de mere indlysende fordele ved en UML inspireret repræsentation er, at man kan repræsentere Relationer grafisk som associationer (i Containments tilfælde som aggregering) i modsætning til Navisions model, hvor Relationer konfigureres som enhver anden Element type ved at udfylde værdier i en propertybox Andre relevante abstraktioner Ovenstående er de abstraktioner, der er absolut nødvendige for at forstå mit projekt. Der findes yderligere en del abstraktioner, som det ikke er strengt nødvendigt at kende til for at forstå mit projekt, men som jeg herunder kort vil beskrive for at give et mere fyldestgørende billede af frameworket og dets muligheder View Et View er en specifik repræsentation af et BO og bruges til at udvælge et sæt af data blandt Elementerne i et BO og give adgang til disse data. Views har med den visuelle konfiguration af de enkelte komponenter at gøre. Man kan knytte Views til på forskellige niveauer. Et View definerer, hvad der rent grafisk skal vises for brugeren, og hvad der skal være transparent. F.eks. kan man i en formular ønske, at navn og adresse, men ikke kunde-id vises. Dette defineres i et View Task En Task arbejder på et eller flere BO s og afspejler de opgaver (Tasks), som en bruger skal kunne arbejde med. En Task er logisk inddelt i et antal skridt (Steps), som er nødvendige for at gennemføre en Task. Hvert Step får tildelt et View. Tasks modellerer de opgaver, en bruger kan relatere sig til. Et eksempel er et Select og et Delete Step for en Delete Task Activity Center og User Role Et Activity Center består af en samling Tasks. Hver bruger har en rolle (såsom salgskonsulent eller indkøber). For hver af disse roller laves en konfiguration af et Activity Center, som bruges til at tilpasse brugerinterfacet
14 Baggrund (det eksisterende framework) til den givne rolle. En bruger får således en portal med en samling Activity Centers, der svarer til brugerens rettigheder Event Eksempler på Events er OnDelete, OnCreate. Events har en speciel signatur og fyres, når et BO eller Element skifter tilstand og derved opfylder et foruddefineret krav Method En Metode (Method) manipulerer BO er og Elementer og er en procedure, der kan udføres på disse. Metoder kan fyre Events Configuration En BO Configuration består af et set Configuration Items, der definerer hvilke specifikke Element typer, Methods, Views og Events, en BO type har/kan have i kontekst af et specifikt Modul (Module) og skal stemme overens med en Configuration Template for Basen (hvis en sådan eksisterer)
15 4.1.2 Den nuværende konfigurationsmodel og dens problemstillinger Den nuværende konfigurationsmodel er en intern Visual Studio.NET løsning, hvilket vil sige, at selve applikationen/konfigurationen er integreret og foregår i Visual Studio.NET (Se Figur 4 14 ). Visual Studio.NET har netop én instans af en property box (nederste højre hjørne), i hvilken alle objekter (hvis de benytter specielle Custom Attributes(se )) lader sig konfigurere det være sig på filniveau, objektinstansniveau mv. Figur 4. Navisions integrerede Visual Studio.NET løsning Den samlede løsning repræsenteres af en træstruktur (Første panel på Design explorer fanen i midten), hvor alle konfigurationens BO er er listede. Når disse vælges enkeltvis, opdateres det tilstødende panel (til højre) og viser en flad fremstilling af de indeholdte Elementer, Relationer mm. indeholdt i det valgte BO. 14 Stedlige (f.eks. til højre ) henvisninger referer i dette afsnit til Figur 4. 14
16 Baggrund (det eksisterende framework) Nederst i venstre hjørne ses en statisk Element træstruktur et opbevaringssted (repository), hvorfra Elementer kan trækkes ind på Design Exploreren. Alle Elementer kan trækkes når som helst, men det er først ved drop- og drag-over eventen, at brugeren opdager (enten ved et No symbol eller ved gennemførelse af drop), om handlingen er lovlig eller ej (almindelig drag-n-drop semantik). I Visual Studio.NET gives der ellers mulighed for at inaktivere elementer afhængigt af, hvad der er valgt, men dette er der tilsyneladende ikke gjort brug af (Hvis man f.eks. ønskede at trække et Element over på et BO, hvor det ikke måtte være, kunne Element træstrukturen have inaktiveret eller helt fjernet dette Element, efter at dette BO var blevet valgt (F.eks er et Customer BO valgt i Design Exploreren på Figur 4, hvilket kunne medføre, at alle de Elementer, der ikke måtte droppes på et Customer BO, automatisk blev inaktiveret)). Hovedproblematikken i denne fremstillingsform er, at det næsten bliver umuligt at danne sig et overblik over den fulde løsning, da træstrukturerne (særligt Design Exploreren) kun fortæller, hvilke BO er, der hører med i en løsning ikke, om deres interkonnektivitet. Denne kan man på besværlig vis browse sig frem til og etablere ved først at finde det Relation Element (der er et Element som alle andre Elementer), der har Base -værdien Master eller Detail (tekstuel property information i Design Exploren ved siden af Entity ). Når dette Element er valgt, kan man finde den modsatte deltager i Relationen repræsenteret ved tekstuel information i propertyboxen. Hurtig navigation mellem de deltagende BO er er ikke mulig. Forskelligheden i ikonerne og navnekonventioner (der automatisk understøttes f.eks. ved påhæftning af forklarende ord som type og view ) tjener som den eneste visualisering af komponenters betydning, rolle og placering i hierarkiet. Semantikken i disse Relationer er så central, at den (manglende) informationsmængde og dårlige overblik, man bibringes ved at browse træstrukturerne, ikke slår til. 6-8 forskellige paneler (toolbox, Element hieraki, Solution Explorer m.fl.) er i sig selv en stor mængde information at holde styr på, og den mentale model af, hvor objekter og deres properties lever, bliver ikke særligt godt understøttet med så mange forskellige views, opbevaringssteder og paneler. Fokus skifter i konfigurationsøjemed konstant mellem de forskellige paneler og altid frem og tilbage mellem disse og propertyboxen 15. Da der kun eksisterer én propertybox, vil et hvilket som helst valg af Element i en af træstrukturene fjerne muligheden for på samme tid at se konfiguration, properties mm. fra andre relevante objekter samtidigt. Inspektion af BO er er altså begrænset til et BO af gangen. 15 En observation, jeg bl.a. gjorde ved en demonstration af designeren ved Peter Borring Sørensen fra Navision
17 Design og implementation af FreeDesigner Efter at jeg således har beskrevet det eksisterende framework, dets konfigurationsproces og problemer, vil jeg gå videre til at beskrive hensigten med mit prototypiske konfigurationsværktøj, løsningsmodeller for dette samt den konkrete implementation. 5 Design og implementation af FreeDesigner Den overordnede ambition har været at gøre konfigurationsprocessen mere intuitiv, overskuelig, brugervenlig og logisk end Navisions eksisterende løsning. I lyset af foregående kapitel kan problemstillingen nuanceres yderligere, og udfordringen og kravene til FreeDesigner er således at kunne: tilbyde mulighed for ren grafisk komposition og konfiguration af prædefinerede BO er og på den måde lette modelleringen af den endelige specialiserede ERP løsning, gøre konfigurationsprocessen så understøttende og intuitiv som muligt og på bedst mulig vis understøtte den konceptuelle model af domænet, visualisere Relation og Containment på en fornuftig og overskuelig måde og herunder understøtte hurtig navigation mellem forbundne Elemente, understøtte overblikket over den fulde løsning, undgå brugen af én central propertybox samt toolbars og opbevarinssteder generelt og derved muliggøre, at flere BO er kan undersøges og overskues på én gang, lægge al funktionalitet ud på objekterne selv i vidste muligt omfang. Overordnet set er ambitionen at demonstrere, at det er muligt at implementere idéen om at lægge al funktionalitet på objekterne selv, lader sig gøre. I forbindelse med dette skal det vurderes, om denne implementation er bedre understøttende end den eksisterende propertybox løsning. Ligeledes ønsker jeg at demonstrere, hvordan farver og øvrige idéer omkring visuelt udtryk positivt kan understøtte modelleringsprocessen og bibringe den brugervenlighed, overskuelighed samt øget semantisk fylde. Den fulde implementation af Jamaicas abstraktioner er ikke en ambition, da en sådan ville udgøre et alt for omfangsrigt projekt. Et testframework bestående af et hierarki af BO metattyper samt et hiearaki af Elementer mm. er implementeret som grundlag for konfigurationsmodellen. Primært har fokus ligget på konfigurationsdelen af frameworket (Designtime metatyper) og kun i begrænset omfang på runtime repræsentation (den resulterende løsning) af konfigurationen. Således er abstraktioner som View, Task, Activity Center, User Role ikke implementeret. Event og Method er kun i ringe omfang implementeret (såsom validering, sletning m.fl.)
18 Design og implementation af FreeDesigner Succeskriteriet er en velfungerende prototype, der formår at implementere og anskueliggøre mine ideer omkring GUI og grafisk manipulation, og som demonstrerer, at de opgaver, der er mulige er løse i den nuværende løsning, også vil vise sig at (kunne) være mulige i min model. Som udgangspunkt eksisterede der to muligheder for hvorledes løsningen kunne implementeres: 1. som intern Visual Studio.NET implementation, 2. som selvstændig Visual Studio.NET uafhængig implementation. 5.1 Visual Studio.NET design time modellering vs. FreeDesigner Visual Studio.NET har fra begyndelsen været udviklingsmiljø for min løsning, og jeg må tilstå, at jeg aldrig har oplevet et miljø, der i så høj grad understøtter programmørens arbejdsgange og behov (eksempelvis kan man højreklikke på et metodekald, objekter mm. og vælge Go to definition, hvorefter Visual Studio.NET navigerer til definitionen på trods af, at denne f.eks. måtte befinde sig i en helt anden fil, namespace). Af denne grund var jeg helt fra begyndelsen meget åben over for muligheden af at lave en løsning, der var integrerbar i Visual Studio.NET og dermed også den eksisterende Jamaica løsning. Løsningen var endvidere attraktiv, fordi Visual Studio.Net tilbyder en lang række relevante features: 1. Designtime:.Net Frameworket er designet til at understøtte en hel del designtime features og sørger for, at designtime specifik kode bor i en separat assembly, så koden ikke påvirker størrelsen af runtime biblioteket (Den endelige løsnings størrelse ville dermed ikke blive påvirket af hvad der skulle til for at modellere den). 2. Design objects: Ethvert objekt, der implementerer System.ComponentModel.IComponent, kan få et designerobjekt knyttet til sig. Dette objekt kaldes en designer og indeholder den ekstra kode, som gør det muligt at manipulere med objektet design time. 3. Root designer: Der kan skabes mange designere for en visuel editor. En af disse skal være master, der tilvejebringer et interface, som brugeren kan interagere med. Denne designer kaldes en root designer, og komponenter, som den er bundet til, kaldes root components. 4. Host: Ud over disse designere er der også et objekt, der er ansvarligt for at håndtere instanserne af alle designerne og komponenterne og samtidig for at loade og save data. Dette objekt implementerer interfacet System.ComponentModel.Design.IDesignerHost og kaldes oftest blot host eller designer host. Visual Studio har en instans af dette objekt for hver Visual Studio editor instans. 5. Persistens: Kodegenerering er default måden, hvorpå designede komponenter gemmer deres data. I Figur 5 ses det, hvorledes figurene i Design view svarer til genereret kode i Code view. En model kan altså genskabes i en Designer på baggrund af en sådan kodefil
19 Design og implementation af FreeDesigner Figur 5 illustrerer mit første forsøg på en integreret Visual Studio.NET løsning, der ganske vist kun har defineret enkelte simple former (shapes) og ingen business logik fra ERP domænet. De definerede former, der kan instantieres fra toolboxen til venstre, kunne aktiveres og deaktiveres afhængigt af, hvad der i øvrigt var valgt (f.eks. ses tre elementer der ikke er shapes inaktiveret i toolboxen). Når formerne trækkes ind på kanvas, bliver den bagvedliggende kode opdateret. Denne kode kan kompileres, når det ønskes og derved vise sit kanvas med de modellerede former på en Windows Form (lig Java Frame) dette kunne i princippet også vises på en ASPX side (se punkt 5 ovenfor). Figur 5. Intern Visual Studio.NET løsning. Shapes på toolbaren tv. properties øverst th. Efter at have forsøgt mig med den interne løsningsmodel 16 fravalgte jeg den, omend den interne model ydede stor hjælp i henseende til persistens, undo/redo, patterns, kodegenerering mm. funktionaliteter, jeg i øvrigt i 16 Med udgangspunkt i et demo projekt, der findes på
20 Design og implementation af FreeDesigner studiemæssigt øjemed selv ønskede at implementere. Løsningsmodellen krævede for meget fokus på Visual Studio.NET, hvilket kun var et sekundært mål i bestræbelserne på at lære.net platformen og C# at kende. De overordnede CASE tool og GUI betragtninger, jeg havde gjort mig, harmonerede dårligt med Visual Studio.NET s forud- og veldefinerede GUI layout. Via denne model havde jeg ikke fuld kontrol over løsningen. Jeg var på én gang hjulpet og begrænset af Visual Studio.NET. Min eksterne løsning har jeg kaldt FreeDesigner slet og ret fordi den er fri af Visual Studio.NET og den eksisterende Jamaica løsning. 5.2 Objektafhængig funktionalitet Jeg har i FreeDesigner valgt ikke at benytte toolbars, propertybox mm. ud fra en betragtning om, at det centrale i et modelleringsværktøj netop er modelleringen, hvorfor jeg giver god plads til dette. Er der ingen toolbars, knapper mm., går opmærksomheden udelt til kanvasset 17, hvorpå det hele foregår Canvas Da der i FreeDesigner ikke er nogen central toolbar eller noget fast objekt opbevaringssted (repository), hvorfra man kan trække objekter ind på Canvas, og der heller ikke gives muligheder for at aktivering af instantieringsværktøjer (f.eks. dialoger), er den eneste mulighed, der resterer, at højreklikke 18 på Canvas for derigennem at få præsenteret de muligheder, der latent knytter sig til dette. Figur 6. Bart konfigurationskanvas med tilhørende kontekstmenuer Canvas opbyder muligheder for at instantiere BO er, konfiguration af farveprofiler, grid mm. Konceptuelt finder man - via dynamisk opdaterede 17 Canvas navnet reflekterer min engelske navngivning i FreeDesigner og denne engelske form benyttes når der refereres til den specifikke implementation. Når det ikke er den der refereres til benyttes den danske stavemåde med k. 18 Der eksisterer derudover en række shortcuts, som jeg eksperimentelt implementerede f.eks. Ctrl + b skaber et nyt BO. Ctrl + z: Undo m.fl
Sådan indlægges nyheder på DSqF s hjemmeside trin for trin
Sådan indlægges nyheder på DSqF s hjemmeside trin for trin Systemkrav For at kunne bruge Composite kræves: Windows 95 eller nyere (bemærk - kun Windows kan bruges) Browseren Internet Explorer 6.0 eller
Læs mereOpstart. I gang med Dreamweaver. Læs mere om...
Generelle bemærkninger Programmet Dreamweaver har været på markedet i nogle år efterhånden. Den seneste version hedder Dreamweaver CS5, og programmet er på engelsk. Dreamweaver er en såkaldt grafisk editor,
Læs mereProdukt Modellering & Load til Microsoft Dynamics NAV
Produkt Modellering & Load til Microsoft Dynamics NAV Send data fra et CAD-system, modellér de ønskede produktionsdata, og opret herefter stamdata automatisk i Dynamics NAV. Formål: Hovedformålet med PM&L
Læs mereOpstart. I gang med Dreamweaver. Læs mere om... Generelle bemærkninger. Hvilken skærmopløsning? OBS
Generelle bemærkninger Programmet Dreamweaver har været på markedet i nogle år efterhånden. Den seneste version hedder Dreamweaver CS4, og programmet er på engelsk. Dreamweaver er en såkaldt grafisk editor,
Læs mereBrugervejledning for Microstation til OpenSceneGraph konverter
Brugervejledning for Microstation til OpenSceneGraph konverter - sidste rettelse: 10/06/2005 side 1 Indholdsfortegnelse Kort oversigt over dgn2osg... 3 Systemkrav... 3 Funktionalitet...4 Geometri...4 Materialer...
Læs mereDokumentering af umbraco artikeleksport:
Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.
Læs mere2. Systemarkitektur... 2
Indholdsfortegnelse 2. Systemarkitektur... 2 2.1 Præsentationsserverarkitektur... 3 2.2 Applikationsserverarkitektur... 7 Version 7.0 Side 1 af 7 5. Systemarkitektur Arkitekturen for Nyt BBR bygger på
Læs mereObjects First with Java A Practical Introduction Using BlueJ
Objects First with Java A Practical Introduction Using BlueJ En introduktion til objektorienteret programmering for begyndere ud fra et software engineering aspekt Om at programmere i Java, ikke om værktøjet
Læs mereOpstart. I gang med Dreamweaver. Læs mere om...
Generelle bemærkninger Programmet Dreamweaver har været på markedet i nogle år efterhånden. Den seneste version hedder Dreamweaver CS6, og programmet er på engelsk. Dreamweaver er en såkaldt grafisk editor,
Læs mereUML til kravspecificering
UML til kravspecificering UML mini-kompendium - til brug i forbindelse med modellering af kravspecifikationer. Copyright 2006 Teknologisk Institut, IT-Udvikling Aktivitetsdiagram 2/9 Aktion Aktionsnavn
Læs mereIntroduktion. Properties (egenskaber) Timeline (Tidslinien) Stage (hovedscenen) kan redigeres.
Flash er et program der bruges til at fremstille animation og interaktion i - især til Internettet. I forhold til andre tilgængelige teknologier er Flash-filer meget små rent datamæssigt. Årsagen er, at
Læs mereGRAFISK WORKFLOW. Hjemmeside design til Chem-Tec Plating
GRAFISK WORKFLOW Hjemmeside design til Chem-Tec Plating REDEGØRELSE Hvad går opgaven ud på Virksomheden Chem-Tec Plating, som specialisere sig i metallisk overfladebehandling, havde været igennem et generationsskiftet
Læs mereKMD Brugeradministration til Navision og LDV
KMD Brugeradministration til Navision og LDV Vejledning for selvejere. Opdateret 09-09-2015 Indholdsfortegnelse 1 Overordnet liste af funktoner... 2 2 Vejledning... 3 2.1 Login til KMD Brugeradministration...
Læs mereSoftware Dokumentation
Software Dokumentation Jan Boddum Larsen Teknologi B og A på HTX Dokumentation af software i Teknologi I samfundet sker der en bevægelse mod mere digitale løsninger i teknologi. Det betyder at software
Læs mereDatabase for udviklere. Jan Lund Madsen PBS10107
Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated
Læs mereBrugervejledning til databrowseren
Brugervejledning til databrowseren Indholdsfortegnelse Indledning...2 Hvordan tilgås browseren og api et...2 Databrowseren...2 Søgning...2 Visning...4 Features i listevisningen...4 Detaljeret visning...5
Læs mereEA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:
Introduktion til EA3 Mit navn er Marc de Oliveira. Jeg er systemanalytiker og datalog fra Københavns Universitet og denne artikel hører til min artikelserie, Forsimpling (som også er et podcast), hvor
Læs mereAdgang til WebGraf. 1. Start Microsoft Internet Explorer. 2. Skriv: http://kort.ge.dk
Indholdsfortegnelse Indholdsfortegnelse.. side 2 Adgang til webgraf 3 Opslag adresse... 4 Styring af layout.. 5 Opslag af område via oversigtskort... 6 Zoom funktioner.. 7 Panorere på skærmen. 8 Information
Læs mereGRAFISK WORKFLOW REDESIGN AF HJEMMESIDE
GRAFISK WORKFLOW REDESIGN AF HJEMMESIDE 2 REDESIGN AF FUTURECOM BUSINESS SOLUTIONS HJEMMESIDE OPGAVEN Den gamle hjemmeside skulles redesignes da den daværende hjemmeside var forældet (indhold og udseende)
Læs mereNovotek Planning Systems A/S 2013 Version 1.0 Jan 2013 ROB-EX 4.2
Version 1.0 Jan 2013 ROB-EX 4.2 Indhold Hovedskærmens opbygning... 2 Tastaturgenveje... 3 Hovedskærmbilleder... 4 Stamdata generelt... 5 Kalender... 6 Opret/rediger kalender... 7 Specifik kalender pr.
Læs mereObject-Relational Mapping
Databaser for udviklere () Datamatiker TietgenSkolen Underviser: Allan Helboe 06-06-2010 Problemformulering Denne opgave er et forsøg på at beskrive problemerne der opstår ved anvendelsen af en relationel
Læs mereIndholdsfortegnelse. Indholdsfortegnelse.. side 2. Adgang til webgraf 3. Opslag adresse... 4. Styring af layout.. 5. Zoom funktioner..
Indholdsfortegnelse Indholdsfortegnelse.. side 2 Adgang til webgraf 3 Opslag adresse... 4 Styring af layout.. 5 Zoom funktioner.. 6 Panorere på skærmen. 7 Information om grafikken.... 8-10 Print et udsnit.....
Læs mereWELLPLOT VER. 3 BRUGERMANUAL
WELLPLOT VER. 3 BRUGERMANUAL I GIS 2002 Wellplot ver. 3 BRUGERMANUAL Udarbejdet for: I GIS ApS Titel: Wellplot ver. 3 Brugermanual Dokumenttype: Software manual Udgave: 1 Dato: 20-09-02 Udarbejdet af:
Læs mereDannelse af PDF dokumenter
Dannelse af PDF dokumenter Indhold Dannelse af PDF-dokumenter i Phd Planner... 2 Valg af vedhæftninger i PDF dokumentet... 2 Valg af skabelon for PDF dokumentet... 3 Når PDF filen er dannet... 5 Gem PDF
Læs mereEDI. Microsoft Dynamics NAV 2009 SP1 Klassisk. Side 1. Copyright: Naddon version 201010
EDI Microsoft Dynamics NAV 2009 SP1 Klassisk Side 1 Indholdet i dette dokument må på ingen måde gengives helt eller delvist hverken på tryk eller i anden form - uden forudgående skriftlig tilladelse fra
Læs mereIT Support Guide. Installation af netværksprinter (direkte IP print)
IT Support Guide Denne guide er hentet på www.spelling.dk Program: Microsoft Windows Vista Program sprog version: ENG (US) Guide emne: Installation af netværksprinter (direkte IP print) Publikationsnr.:
Læs mereSoftware Construction 1 semester (SWC) Spørgsmål 1
Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /
Læs mereBrugervejledning til Design Manager Version 1.02
Brugervejledning til Design Manager Version 1.02 Indholdsfortegnelse 1. Introduktion... 3 1.1 Det kan du med HostedShop Design Manager... 3 1.2 Feature list... 3 2. Design... 4 3. Filer og CSS... 4 3.1
Læs mereGreenfoot En kort introduktion til Programmering og Objekt-Orientering
Greenfoot En kort introduktion til Programmering og Objekt-Orientering Greenfoot er et computer-program, som kan benyttes til at skrive andre computer-programmer, i et programmeringssprog kaldet Java.
Læs mereLav din egen forside i webtrees
Lav din egen forside i webtrees Du behøver ikke at kunne kode eller gøre noget advanceret for at designe din helt egen forside i webtrees. Alt du skal gøre er bare at gøre brug af den indbygget editor.
Læs mereActiveBuilder Brugermanual
ActiveBuilder Brugermanual Forfatter: TalkActive I/S Dato: Juni 2004 Version: R. 1.01 Sprog: Dansk Copyright 2004 - Talk Active - all rights reserved. Indhold: 1. INDLEDNING...2 2. QUICK-START...3 3. OPBYGNINGEN
Læs mereIFC Egenskaber. Mohammad Hussain Parsianfar s102951 BYG DTU
Mohammad Hussain Parsianfar s102951 Indholdsfortegnelse 1 Introduktion... 3 1.1 Hvorfor er det interessant... 3 1.2 Formål... 4 2 Simplebim... 5 2.1 Præsentation af softwaren... 5 2.1.1 Brugergrænseflade...
Læs mereKoncept for systemforvaltning af den fælles open source kode, herunder procedure for opfølgning på software-versioner af OpenTele
LEVERANCE 2.1 Koncept for systemforvaltning af den fælles open source kode, herunder procedure for opfølgning på software-versioner af OpenTele Konceptet beskriver, hvordan koden forvaltes, og hvordan
Læs mereVisualDRG brugermanual
VisualDRG brugermanual VisualDRG er en grafisk fremstilling af grupperingslogikken der bliver brugt i forbindelse med finansiering af sundhedsvæsnet, herunder mellemregional afregning og kommunal medfinansiering.
Læs mereSupermarkedsmodellen for design af brugergrænseflade
Supermarkedsmodellen for design af brugergrænseflade Denne note er skrevet frit efter Peter Huber, som på et kursus i Efteruddannelsescenteret fortalte om supermarkedsmodellen til design af brugergrænseflader.
Læs mereKom hurtigt i gang. med. FloorPlan 3D. FloorPlan 3D er et program med mange anvendelsesmuligheder!
Kom hurtigt i gang med FloorPlan 3D FloorPlan 3D er et program med mange anvendelsesmuligheder! Formålet med denne guide, er at give et overblik over de grundlæggende funktioner i FloorPlan 3D og at få
Læs mereOpgave: Digitalisering af et dokument
Denne opgave omhandler digitaliseringen af et Veje i Frederikssund Kommune. I opgaven gennemgås følgende: Oprettelse af mapper og sider på hjemmesiden Indsættelse af tekst, billeder, links til PDF og hjemmesider
Læs mereGENEREL FUNKTIONALITET I KMD OPUS ROLLEBASERET INDGANG
GENEREL FUNKTIONALITET I KMD OPUS ROLLEBASERET INDGANG Arbejdsgang Beskrivelse Handling Overblik over opgaver Du får nu vist Forsiden. Hver fane har en farve, som er unik for den specifikke rolle, og dermed
Læs mereManual til administration af online booking
2016 Manual til administration af online booking ShopBook Online Med forklaring og eksempler på hvordan man konfigurerer og overvåger online booking. www.obels.dk 1 Introduktion... 4 1.1 Formål... 4 1.2
Læs mereBrugergrænseflader i VSU
28-10-09 Side 1/5 Brugergrænseflader i Dette notat giver et praktisk eksempel på, hvordan brugergrænsefladen kan håndteres i. Notatet er en konsekvens af en lidt overfladisk beskrivelse i [B&D00] samt
Læs mereBør kragerne flyve mod øst?
Bør kragerne flyve mod øst? Mit navn er Marc de Oliveira. Jeg er systemanalytiker og datalog fra Københavns Universitet og denne artikel hører til min artikelserie, Forsimpling (som også er et podcast),
Læs mereHvorfor skal vi bruge objekt orienteret databaser?
OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal
Læs mereWELLPLOT ARCGIS BRUGERMANUAL 9.3.1 I G I S A P S 2 0 1 1
WELLPLOT ARCGIS BRUGERMANUAL 9.3.1 I G I S A P S 2 0 1 1 W e l l P l o t A r c G I S BRUGERMANUAL 9.3.1 Udarbejdet for: Titel: Dokumenttype: I GIS ApS WellPlot ArcGIS Brugermanual 9.3.1 Software manual
Læs mere10. Rapporter i BBR... 2
Indholdsfortegnelse 10. Rapporter i BBR... 2 10.1 Reporting Services arkitektur...2 10.2 Reporting Services i Nyt BBR...3 10.3 Faste BBR rapporter...4 10.4 Selvgenerede BBR rapporter...5 10.5 BBR-Meddelelser...5
Læs mereSamspillet mellem databaser og kort styres af GeoCAD programmet GeoDB.
GeoCad modul GeoDB I GeoCAD er det muligt at koble relationsdatabase til GeoEDIT. Her igennem er det muligt at lagre forskellige oplysninger i databasen og koble disse oplysninger til objekter i kortet.
Læs mereManual til Kundekartotek
2016 Manual til Kundekartotek ShopPlanner Customers Med forklaring og eksempler på hvordan man håndterer kundeoplysninger www.obels.dk 1 Introduktion... 3 1.1 Formål... 3 1.2 Anvendelse... 3 2 Referencer...
Læs mereCasper Fabricius http://casperfabricius.com. ActiveRecord. O/RM i Ruby on Rails
Casper Fabricius http://casperfabricius.com ActiveRecord O/RM i Ruby on Rails Casper Fabricius Freelance webudvikler - casperfabricius.com 9 års erfaring med webudvikling 6 år med ASP/ASP.NET/C# 3 år med
Læs mereIndhold. 1 Indledning... 3. 1.1 Kompatible browsere... 3. 2 Log ind i Umbraco... 3. 3 Content-delen... 4. 3.1 Indholdstræet... 4
Indhold 1 Indledning... 3 1.1 Kompatible browsere... 3 2 Log ind i Umbraco... 3 3 Content-delen... 4 3.1 Indholdstræet... 4 3.2 Ændring af indhold... 5 3.3 Tilføjelse af en side/sektion... 6 3.4. At arbejde
Læs mereVejledning til brug af FirstClass
Vejledning til brug af FirstClass - opdateret januar 2013 Indhold Installation af FirstClass foretages kun første gang... 2 Hent FirstClass-klienten... 2 Installer FirstClass-klienten... 3 Ændre kodeord...
Læs mereLightning Decision Jam. Ti enkle trin til at fastlægge fokus og realiserbare næste bedste skridt
Lightning Decision Jam Ti enkle trin til at fastlægge fokus og realiserbare næste bedste skridt Lightning Decision Jam Lightning Decision Jam er en trin-for-trin proces, der hjælper teams til at identificere,
Læs mereTeamShare 2.1 Versionsnoter Oktober 2009
TeamShare 2.1 Versionsnoter Oktober 2009 TeamShare version 2.1.292 Denne version af TeamShare har fået mange nye funktioner, samt forbedringer på eksisterende. Hver ny feature er gennemgået i hvert sit
Læs mereAdministration af subsites BRUGERVEJLEDNING FOR ADMINISTRATOREN
Administration af subsites BRUGERVEJLEDNING FOR ADMINISTRATOREN Indholdsfortegnelse Introduktion... 2 Definitioner... 2 Generelt... 3 Oprettelse af en skabelon... 4 Sidetypeskabeloner... 5 Globale displaymoduler...
Læs mereVejledning PROPHIX 11. Driftsbudgettering ved åbning af templates (Kun til Avanceret-brugere)
PROPHIX 11 Systemansvarlige Michael Siglev Økonomiafdelingen 9940 3959 msi@adm.aau.dk Daniel Nygaard Ricken Økonomiafdelingen 9940 9785 dnr@adm.aau.dk Vejledning (Kun til Avanceret-brugere) Opdateret:
Læs mereManual til Statistik. ShopStatistics. Med forklaring og eksempler på hvordan man håndterer statistik. Consulo ApS 20-03-2009
2012 Manual til Statistik ShopStatistics Med forklaring og eksempler på hvordan man håndterer statistik Consulo ApS 20-03-2009 1 Introduktion... 3 1.1 Formål... 3 1.2 Anvendelse... 3 2 Referencer... 4
Læs mereStørre skriftlige opgaver i Microsoft Word 2007 Indhold
Større skriftlige opgaver i Microsoft Word 2007 Indhold Større skriftlige opgaver i Microsoft Word 2007... 1 Inddeling i afsnit... 2 Sideskift... 2 Sidetal og Sektionsskift... 3 Indholdsfortegnelse...
Læs mereWorkshop G8 Tasks og Templates
Workshop G8 Tasks og Templates FØR I BEGYNDER...... 2-1 TEMPLATES... 2-2 Øvelse template til alm. attributter... 2-2 Øvelse Skraverings template... 2-4 VED ELEMENTET HVAD DET ER FOR ÉN?... 2-4 Øvelse ændre
Læs mereWorkshop W4 MicroStation V8i
Workshop W4 MicroStation V8i FØR I BEGYNDER... FØR I BEGYNDER......1 BRUGERFLADEN...2 MENUERNE...2 Opgave: Lav om på hvordan dine værktøjer præsenteres...2 BESTEM SELV HVAD DU VIL SE I STATUS BAREN...3
Læs mereLW313 Sweex Wireless 300N Adapter USB
LW313 Sweex Wireless 300N Adapter USB Bemærk venligst! Udsæt ikke Sweex Wireless 300N Adapter USB for ekstreme temperaturer. Placér ikke adapteren i direkte sollys eller i nærheden af radiatorer eller
Læs mereDannelse af PDF-dokumenter
Dannelse af PDF-dokumenter Indhold Generere PDF-dokumenter... 2 Håndtering af PDF-dokumentet... 8 Hvordan indsætter man sidetal i PDF-dokumentet?... 8 Hvordan laver man bookmarks i PDF-dokumentet?... 8
Læs merevejman.dk Brugerdokumentation - kortmodul 14. marts 2012 Version 1.9
Brugerdokumentation - kortmodul 14. marts 2012 Version 1.9 Indholdsfortegnelse 1 Indledning... 3 1.1 Anbefalinger... 4 1.2 Datahjælp... 4 1.3 Brugerindstillinger... 5 2 Generel funktionalitet... 6 2.1
Læs mereOpsætning af MobilePBX med Kalenderdatabase
Opsætning af MobilePBX med Kalenderdatabase Dette dokument beskriver hvorledes der installeres Symprex Exchange Connector og SQL Server Express for at MobilePBX kan benytte kalenderadadgang via database
Læs mereAndreas Lauge V. Hansen klasse 3.3t Roskilde HTX
IT -Eksamen Andreas Lauge V. Hansen klasse 3.3t Roskilde HTX [Vælg en dato] Indhold Indledning... 2 Teori... 3 Hvorfor dette design... 4 Produktet... 4 Test og afprøvning... 9 Konklusion... 10 Indledning
Læs mereVEJLEDNING Udfyldelse af spørgeskemaet
VEJLEDNING Udfyldelse af spørgeskemaet Indholdsfortegnelse Introduktion... 3 Tekniske krav... 3 Adgang og forbindelse... 4 Navigation i spørgeskemaet... 7 Spørgeskemaets afsnit... 7 Navigationslinjen...
Læs mereExceptions i Delphi. Try except
Exceptions i Delphi Exceptions er en teknik til at fange fejl under programafviklingen. Ikke programmeringsfejl, men fejl der opstår i forskellige situationer, f.eks. en fil der mangler en fil der er skrivebeskyttet,
Læs mereUgeseddel 4 1. marts - 8. marts
Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,
Læs mereDatabasesystemer, forår 2006 IT Universitetet i København. Forelæsning 3: E-R modellering. 16. februar 2006. Forelæser: Rasmus Pagh
Databasesystemer, forår 2006 IT Universitetet i København Forelæsning 3: E-R modellering 16. februar 2006 Forelæser: Rasmus Pagh Forelæsningen i dag Datamodellering hvad, hvorfor og hvordan? Business rules
Læs mereNavision Stat 7.0. Kvikguide om tilpasning af rollecenteret. Overblik. Side 1 af 29. ØSY/STO 18. maj 2015
Side 1 af 29 Navision Stat 7.0 ØSY/STO 18. maj 2015 Kvikguide om tilpasning af rollecenteret Overblik Formål Denne kvikguide omhandler de tilpasninger som du kan foretage i Handlingsbåndet, Navigationsmenuen
Læs mereVejledning Huslejebudgettering
PROPHIX 11 Systemansvarlige Daniel Nygaard Ricken Økonomiafdelingen 9940 9785 dnr@adm.aau.dk Michael Siglev Økonomiafdelingen 9940 3959 msi@adm.aau.dk Vejledning Opdateret: September 2016 Version: 1 1.
Læs mereOprettelse af Titelblok i Capture og Capture CIS
e-service Titelblok i OrCAD Capture og Capture CIS Side 1 af 11 Oprettelse af Titelblok i Capture og Capture CIS Note skrevet af : Nordcad Systems Technical Support Revision : April 2003, Release 14.2/9.2.3,
Læs mereIndholdsfortegnelse. Systembeskrivelse kapitel 8 Administrationsdatabase
Indholdsfortegnelse 5. Administrationsdatabase... 2 5.1 Metadata... 2 5.2 Administrationsdata... 3 5.2.1 Indstillingsmuligheder... 3 5.2.2 Webside... 4 5.2.3 Klikafgift (Udgået)... 4 5.2.4 Modtageboks...
Læs mereIndledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål.
Indhold Indledning... 3 Søgefunktioner... 4 Søgning fra forsiden... 5 Søgning under menupunktet Instrument... 6 Sådan får man vist instrumenterne i en bestemt afdeling... 7 Sådan ændrer man status på et
Læs mereFiler Under menupunket Administration får du adgang til Indekssiden, hvor du finder symbolet for modulet Filer.
Filer Generelt Det ikke er tilladt at lagre informationer, der er i strid med gældende dansk lovgivning. For at kunne arbejde med filer på internetportalen skal du være logget ind med brug af medlemsnummer
Læs mereAdministration...2 Organisation...2 Brugere...5 Grupper...11
Administration...2 Organisation...2 Brugere...5 Grupper...11 Administration Organisation Opret ny organisation I organisationsvælgeren vælges det rette niveau hvorpå den nye organisationen skal placeres.
Læs mereIndhold Indhold Introduktion Log ind MyPage Administrator: oprettelse af brugere Administrator: oprettelse af
Indhold Indhold... 2 1. Introduktion... 3 2. Log ind... 3 3. MyPage... 4 4. Administrator: oprettelse af brugere... 5 5. Administrator: oprettelse af organisation... 6 6. Administrator: Opsætning af brugere
Læs mereVejledning i brug af Kommunen på kort
Vejledning i brug af Kommunen på kort Indhold Adgang til Kommunen på kort... 2 Værktøjslinjen den øverste sorte del... 3 Navn... 3 Indstillinger... 3 Hjælp... 3 Kortvindue og infolinje... 3 Målforhold...
Læs mereAssignment #5 Toolbox Contract
Assignment #5 Toolbox Contract Created by: René Kragh Trine Randløv E mail address cph rk70@cphbusiness.dk 23 11 2014 1 Introduktion Dette dokument indeholder en vertikal kontrakt for et system som skal
Læs mereSilkeborg Review Mine sider
Silkeborg Review Mine sider Datagrundlag Det er vigtigt, at de informationer man viser kan hentes let (hurtigt) fra bibliotekssystemet eller Brønden. Det vil betyde rigtig meget for hastighed i præsentationen
Læs mereHHBR. Design. Kvalitets vurdering. Opgaven. Målgruppe og Budskab. De Grafiske valg
Opgaven Der skal designes en hjemmeside til en pensioneret revisor, som ønsker at starte en fritids beskæftigelse op, som privat revisor. Han Ønsker en hjemmeside der skal kort fortælle om hans forretning.
Læs mereManual Serif Web & Tableau Public
Manual Serif Web & Tableau Public Indhold 2 Start 3 Festivalprogram 4-19 Kursuskatalog 20-22 Dramaskolehold 23-28 Visitkort konsulenter 29-30 Visitkort scener 31-35 Amatørkulturens tal 36-42 VIGTIGT! For
Læs mereIndholdsfortegnelse. Systembeskrivelse Rapporter
Indholdsfortegnelse 10. Rapporter i BBR... 2 10.1 Reporting Services arkitektur... 2 10.2 Reporting Services i Nyt BBR... 3 10.3 Faste BBR-rapporter... 4 10.3.1 Kort beskrivelse af de 25 faste rapporter...
Læs mereVersion Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet.
MOX og APOS2 Forord Dette dokument er en del af APOS version 2 manualerne. APOS version 2 (APOS2 herefter) er et organisation, klassifikation og personale system baseret på Sag & Dokument standarderne.
Læs mereMANUAL. Præsentation af Temperaturloggerdata. Version 2.0
MANUAL Præsentation af Temperaturloggerdata Version 2.0 Indholdsfortegnelse FORORD...3 INTRODUKTION...3 KRAV OG FORUDSÆTNINGER...3 INSTALLATION...4 OPSÆTNING...8 PROGRAMOVERBLIK...10 PROGRAMKØRSEL...11
Læs mereDatabasesystemer, forår 2005 IT Universitetet i København. Forelæsning 3: E-R modellering. 17. februar 2005. Forelæser: Rasmus Pagh
Databasesystemer, forår 2005 IT Universitetet i København Forelæsning 3: E-R modellering 17. februar 2005 Forelæser: Rasmus Pagh Forelæsningen i dag Datamodellering hvad, hvornår, hvorfor og hvordan? Business
Læs mereDette er en vejledning til hvordan nye skarvkolonier oprettes og hvordan resultater fra optællinger af kolonier indtastes.
Dette er en vejledning til hvordan nye skarvkolonier oprettes og hvordan resultater fra optællinger af kolonier indtastes. De tre trin Trin 1 Opret ny bruger Som optæller af skarvkolonier får du her mulighed
Læs mereLOGON Billede: Ved logon, er det vigtigt at der er vinget af i feltet Default miljø og rolle.
ASPECT4 Client En af de største og mest markante ændringer i den nye klient ASPECT4 version 3 er en kraftigt forbedret grafisk klient med en helt nydesignet arbejdsplads mod ASPECT4 funktionerne. LOGON
Læs mereFESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade 63 2100 København Ø
FESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade 63 2100 København Ø Høringssvar vedr. FESD GIS-integrationsmodel version 2.0 Geodata Danmark har
Læs mereTil at starte med vil jeg lige vis nogle små ændringer på opsætningen som jeg har lavet.
Microstation brugermøde 10. og 11. november 2008. Indlæg af Else-Marie Lorenzen. Vejdirektoratet Til at starte med vil jeg lige vis nogle små ændringer på opsætningen som jeg har lavet. Som det første
Læs mereMicroStation V8i Print
MicroStation V8i Print Arne Mortensen Page 1 Print Optioner Printe kan være så simpelt som at definer et View eller placer et fence omkring det areal, der skal printes, og derefter klikke på Print ikonet
Læs mereECdox som favorit. Indledning 1. Internet Explorer 2. Chrome 4. Safari 5. Favorit på mobile enheder 6 Android 6 IOS 7. ECdox på mobile enheder 7
ECdox som favorit Indledning 1 Internet Explorer 2 Chrome 4 Safari 5 Favorit på mobile enheder 6 Android 6 IOS 7 ECdox på mobile enheder 7 Indledning Dette dokument beskriver hvordan man opretter og arbejder
Læs mereIntroduktion til Flash
Introduktion til Flash Kaspar Rosengreen Nielsen kaspar@interactivespaces.net Kaspar Rosengreen Nielsen, kaspar@interactivespaces.net 1 Om mig Kaspar Rosengreen Nielsen. Uddannet datalog med sidefag i
Læs mereProgrammering og Problemløsning, 2017
Programmering og Problemløsning, 2017 Rekursion Towers of Hanoi og Liniegrafik Martin Elsman Datalogisk Institut Københavns Universitet DIKU 13. Oktober, 2017 Martin Elsman (DIKU) Programmering og Problemløsning,
Læs mereSmart-ebizz Manual til Bookinsystem Indholdsfortegnelse Kom hurtigt i gang med dit booking system:... 3 Overblikket over dit bookingsystem... 4 Hovedside... 4 Kunder... 4 Opret ny Kunde... 4 Vagtplaner...
Læs mereEG Data Inform. Byggebasen. WCF og webservices. Jens Karsø
EG Data Inform Byggebasen WCF og webservices Jens Karsø 10 Indholdsfortegnelse Byggebasen Services indledning... 2 Målsætning... 2 Valg af teknologier... 3 Kommunikationsmodel for byggebasen... 3 Services.byggebasen.dk...
Læs mereVejledning i brug af Kommunen på kort
Vejledning i brug af Kommunen på kort Indhold Adgang til Kommunen på kort... 2 Kortvindue og infolinje... 2 Målforhold... 2 Zoom... 3 Signaturforklaring... 3 Værktøjslinjen den øverste sorte del... 3 Navn...
Læs mereFMK-online's brug af SmartFraming
Side 1 af 9 FMK-online's brug af SmartFraming Version 1.1 2011-11-01 Side 2 af 9 Indholdsfortegnelse Indledning...3 Initialisering og login...3 Kontekst Properties...4 user.id.authorizationid...4 userorganization.id.number...4
Læs mereMailMax / Web v4.1. Brugsvejledning til webmail. Copyright 2003 Gullestrup.net
MailMax / Web v4.1 Copyright 2003 Gullestrup.net Log ind på webmailen Start med at gå ind på http://webmail.gullestrup.net i din browser. Indtast din Email-adresse samt Adgangskode, som hører til din konto.
Læs mereActive Builder - Brugermanual
Active Builder - Brugermanual Version: Release 2.0 Sprog: Dansk Copyright 2014 - Talk Active ApS INDHOLDSFORTEGNELSE INDHOLDSFORTEGNELSE... 2 1. HURTIGT OVERBLIK... 4 1.1 Vælg URL:... 4 1.2 Vælg en skabelon:...
Læs mere