Deli putem


Praćenje zavisnosti komponenata rešenja

Rešenja su napravljena od komponenata rešenja. Koristićete oblast Rešenja oblast u Microsoft Dataverse da biste kreirali ili dodali komponente rešenja. Ove radnje možete izvesti programski koristeći AddSolutionComponentRequest poruku ili bilo koje poruke koje kreiraju ili ažuriraju komponente rešenja koje uključuju SolutionUniqueName parametar.

Komponente rešenja često zavise od drugih komponenti rešenja. Ne možete da obrišete bilo koju komponentu rešenja koja zavisi od druge komponente rešenja. Na primer, prilagođena traka obično zahteva veb-resurse slika ili skripti za prikazivanje ikona i izvršavanje radnji koristeći skripte. Sve dok je prilagođena traka u rešenju, obavezni su određeni veb-resursi koje ona koristi. Pre nego što obrišete veb-resurse morate ukloniti reference na njih iz prilagođene trake. U aplikaciji možete pregledati ove zavisnosti komponenata rešenja klikom na Prikaži zavisnosti.

Ova tema opisuje tipove komponenti rešenja koje možete da uključite u svoja rešenja i kako oni zavise jedni od drugih.

Sve komponente rešenja

Kompletna lista dostupnih tipova komponenti rešenja nalazi se u sistemu componenttype opšti skup opcija. Podržani opseg vrednosti za ovo svojstvo dostupan je dodavanjem datoteke OptionSets.cs ili OptionSets.vb u projekat. Međutim, mnogi navedeni tipovi komponenti rešenja postoje samo za internu upotrebu, a lista ne pruža informacije o relacijama između komponenata rešenja.

Zavisnosti komponenti rešenja

Zavisnosti komponenti rešenja pomažu vam da imate pouzdano iskustvo rada sa rešenjima. Oni sprečavaju radnje koje obično izvodite od nenamernih promena prilagođavanja definisanih u rešenju. Ove zavisnosti su ono što omogućava kompletnom rešenju da se instalira i deinstalira jednostavnim uvozom ili brisanjem rešenja.

Okvir rešenja automatski prati zavisnosti komponenti rešenja. Svaka operacija na komponenti rešenja automatski izračunava zavisnosti od drugih komponenti u sistemu. Informacije o zavisnosti se koriste za održavanje integriteta sistema i sprečavanje operacija koje bi mogle dovesti do neusaglašenog stanja.

Kao rezultat praćenja zavisnosti, primenjuju se sledeća ponašanja:

  • Brisanje komponente se sprečava ako druga komponenta u sistemu zavisi od nje.

  • Izvoz rešenja upozorava korisnika ako postoje komponente koje nedostaju koje bi mogle prouzrokovati neuspeh pri uvozu rešenja u drugi sistem.

    Upozorenja tokom izvoza mogu se zanemariti ako programer rešenja nameri da se rešenje instalira samo u organizaciji u kojoj se očekuje da postoje zavisne komponente. Na primer, kada kreirate rešenje koje je namenjeno da se instalira preko unapred instaliranog „osnovnog“ rešenja.

  • Uvoz rešenja neće uspeti, osim ukoliko sve potrebne komponente nisu uključene u rešenje, a takođe ne postoje u ciljnom sistemu.

    • Pored toga, kada uvezete kompletno rešenje, sve obavezne komponente moraju da se podudaraju sa tipom paketa rešenja. Komponenta u kompletnom rešenju može zavisiti samo od druge kompletne komponente.

    Postoje tri vrste zavisnosti komponenti rešenja:

    Interno za rešenje
    Unutrašnjim zavisnostima upravlja Dataverse. Oni postoje kada određena komponenta rešenja ne može da postoji bez druge komponente rešenja.

    Objavljeno
    Objavljene zavisnosti se kreiraju kada su dve komponente rešenja povezane jedna sa drugom, a zatim objavljene. Da biste uklonili ovu vrstu zavisnosti, povezivanje mora biti uklonjeno, a entiteti ponovo objavljeni.

    Neobjavljeno
    Neobjavljene zavisnosti odnose se na neobjavljenu verziju komponente rešenja koja može da se objavi, a koja se ažurira. Nakon što je objavljena komponenta rešenja, ona postaje objavljena zavisnost.

    Unutrašnje zavisnosti rešenja su zavisnosti gde radnje sa komponentom rešenja zahtevaju radnju za drugu komponentu rešenja. Na primer, ako obrišete entitet, trebalo bi da očekujete da će sa njim biti izbrisani i svi atributi entiteta. Bilo koja relacija između entiteta sa drugim entitetima takođe će biti izbrisana.

    Međutim, unutrašnja zavisnost može dovesti do objavljene zavisnosti, a da još uvek zahteva ručnu intervenciju. Na primer, ako u obrazac entiteta uključite polje za pronalaženje, a zatim izbrišete primarni entitet u relaciji, to brisanje ne možete dovršiti dok ne uklonite polje za pronalaženje iz povezanog entitetskog obrasca, a zatim ga objavite.

    Kada programski izvršavate radnje sa rešenjima možete da koristite poruke povezane sa Dependency entitetom. Pogledajte Entitet zavisnosti za poruke koje možete da koristite za identifikaciju zavisnosti koje mogu postojati pre nego što obrišete komponentu ili deinstalirate rešenje.

Komponente zajedničkog rešenja

To su komponente rešenja prikazane u aplikaciji i komponente sa kojima ćete direktno raditi prilikom dodavanja ili uklanjanja komponenti rešenja pomoću stranice rešenja. Postojanje svakog drugog tipa komponenti rešenja zavisiće od jedne ili više ovih komponenti rešenja.

Trake aplikacije (RibbonCustomization) Entitet (Entity) Izveštaj (Report)
Predložak članka (KBArticleTemplate) Bezbednosni profil polja (FieldSecurityProfile) Korak obrade SDK poruke (SDKMessageProcessingStep)
Uloge veza (ConnectionRole) Predložak za objedinjavanje pošte (MailMergeTemplate) Bezbednosna uloga (Role)
Predložak ugovora (ContractTemplate) Skup opcija (OptionSet) Krajnja tačka usluge (ServiceEndpoint)
Kontrolna tabla ili obrazac entiteta (SystemForm) Sklop dodatnih komponenti (PluginAssembly) Mapa lokacije (SiteMap)
Predložak e-pošte (EmailTemplate) Proces (Workflow) Veb-resurs (WebResource)

Trake aplikacije (RibbonCustomization)

Prilagođavanja trake za traku aplikacije i predloške trake entiteta. Trake aplikacije ne uključuju definicije traka na nivou entiteta ili obrasca.

Prilagođene trake aplikacija su često objavljivale zavisnosti od veb-resursa. Veb-resursi se koriste za definisanje ikona dugmeta traka i JavaScript funkcija da bi se kontrolisalo kada se elementi trake prikazuu ili koje se radnje izvode kada se koristi određena kontrola trake. Zavisnosti se stvaraju samo kada definicije vrpce koriste $webresource: direktivu za pridruživanje veb-resursa traci. Još informacija: $webresource direktiva

Predložak članka (KBArticleTemplate)

Predložak koji sadrži standardne atribute članka. Uvek postoji unutrašnja zavisnost između predloška članka i KbArticle entiteta.

Uloge veza (ConnectionRole)

Uloga koja opisuje relaciju između dva zapisa. Svaka uloga povezivanja definiše koje vrste zapisa entiteta mogu biti povezane koristeći ulogu povezivanja. Ovo stvara objavljenu zavisnost između uloge povezivanja i entiteta.

Predložak ugovora (ContractTemplate)

Predložak koji sadrži standardne atribute ugovora. Uvek postoji unutrašnja zavisnost između predloška ugovora i entiteta ugovora.

Kontrolna tabla ili obrazac entiteta (SystemForm)

Zapisi entita sistemskih obrazaca se koriste za definisanje kontrolnih tabli i obrazaca entiteta. Kada se SystemForm koristi kao obrazac entiteta, postoji unutrašnja zavisnost od entiteta. Kada se SystemForm koristi kao kontrolna tabla, nema unutrašnjih zavisnosti. Obrasci entiteta i kontrolne table obično objavljuju zavisnosti povezane sa njihovim sadržajem. Obrazac entiteta može imati polja za pretraživanje koja zavise od relacija između entiteta. I kontrolne table i obrasci entiteta mogu sadržati grafikone ili podforme koje će stvoriti objavljenu zavisnost od prikaza, koji tada ima unutrašnju zavisnost od entiteta. Objavljena zavisnost od veb-resursa može se stvoriti zbog sadržaja prikazanog na kontrolnoj tabli ili u obrascu ili kada obrazac sadrži JavaScript biblioteke. Obrasci entiteta su objavili zavisnosti od bilo kojih atributa koji su prikazani kao polja u obrascu.

Predložak e-pošte (EmailTemplate)

Predložak koji sadrži standardne atribute e-poruke. Predložak e-pošte obično sadrži polja koja ubacuju podatke iz određenih atributa entiteta. Predložak e-pošte može se povezati sa određenim entitetom kada je kreiran, tako da može da postoji interna zavisnost od entiteta. Globalni obrazac e-pošte nije povezan sa određenim entitetom, ali možda je objavio zavisnosti od atributa entiteta koji se koriste za pružanje podataka. Proces (tok posla) često je konfigurisan za slanje e-pošte pomoću predloška e-pošte stvarajući objavljenu zavisnost od toka posla.

Entitet (Entity)

Primarna struktura koja se koristi za modeliranje i upravljanje podacima u Dataverse. Grafikoni, obrasci, relacije između entiteta, prikazi i atributi povezani sa entitetom automatski se brišu kada se entitet izbriše zbog unutrašnjih zavisnosti između njih. Entiteti često objavljuju zavisnosti od procesa, kontrolnih tabli i predložaka e-pošte.

Bezbednosni profil polja (FieldSecurityProfile)

Profil koji definiše nivo pristupa za sigurne atribute.

Predložak za objedinjavanje pošte (MailMergeTemplate)

Predložak koji sadrži standardne atribute za dokument objedinjavanja pošte. Predložak objedinjavanja pošte ima objavljenu zavisnost od entiteta sa kojim je povezan.

Skup opcija (OptionSet)

Skup opcija definiše skup opcija. Atribut liste izbora koristi skup opcija za definisanje ponuđenih opcija. Nekoliko atributa liste izbora može koristiti globalni skup opcija tako da su opcije koje pružaju uvek iste i mogu se održavati na jednom mestu. Objavljena zavisnost nastaje kada atribut liste izbora referencira globalni skup opcija. Ne možete izbrisati globalni skup opcija koji koristi atribut liste izbora.

Sklop dodatnih komponenti (PluginAssembly)

Sklop koji sadrži jedan ili više tipova dodatnih komponenti. Dodatne komponente su registrovane za događaje koji su obično povezani sa entitetom. Ovo stvara objavljenu zavisnost.

Proces (Workflow)

Skup logičkih pravila koji određuje korake neophodne za automatizovanje određenog poslovnog procesa, zadatka ili grupe radnji koje treba izvršiti. Procesi pružaju širok spektar radnji koje stvaraju objavljene zavisnosti od bilo koje druge komponente rešenja na koju se poziva proces. Svaki proces takođe ima objavljenu zavisnost od entiteta sa kojim je povezan.

Izveštaj (Report)

Rezime podataka u rasporedu koji se lako čita. Izveštaj je objavio zavisnosti od bilo kog entiteta ili podatka atributa koji su uključeni u izveštaj. Svaki izveštaj mora biti povezan sa kategorijom Izveštaj stvarajući unutrašnju zavisnost od komponente rešenja koja se naziva Kategorija povezana sa izveštajem (ReportCategory). Izveštaji mogu biti konfigurisani kao podizveštaji, što stvara objavljenu zavisnost sa nadređenim izveštajem.

Korak obrade SDK poruke (SDKMessageProcessingStep)

Faza na kanalu za izvršavanje koju dodatna komponenta treba da izvrši.

Bezbednosna uloga (Role)

Grupisanje bezbednosnih privilegija. Korisnicima se dodeljuju uloge kojima dobijaju ovlašćenja za pristup sistemu Dataverse. Obrasci entiteta se mogu povezati sa određenim bezbednosnim ulogama kako bi se kontrolisalo ko može da pregleda obrazac. Ovo stvara objavljenu zavisnost između bezbednosne uloge i obrasca.

Belešku

Rešenju se mogu dodati samo bezbednosne uloge iz poslovne jedinice organizacije. Samo korisnik sa pristupom čitanja tim bezbednosnim ulogama može da ih doda u rešenje.

Krajnja tačka usluge (ServiceEndpoint)

Krajnja tačka usluge koja se može kontaktirati.

Mapa lokacije (SiteMap)

XML podaci koji se koriste za kontrolu okna za navigaciju aplikacije. Mapa lokacije može biti povezana za prikazivanje HTML veb-resursa ili ikona na mapi lokacije može da koristi slikovni veb-resurs. Kada se $webresource: direktiva koristi za uspostavljanje ovih asocijacija, stvara se objavljena zavisnost. Još informacija: $webresource direktiva

Veb-resurs (WebResource)

Podaci koji odgovaraju datotekama upotrebljenim u veb-razvoju. Veb-resursi obezbeđuju komponente na strani klijenta koje se koriste za obezbeđivanje prilagođenih elemenata korisničkog interfejsa. Veb-resursi su možda objavili zavisnosti sa obrascima entiteta, trakama i mapom lokacije. Kada se $webresource: direktiva koristi za uspostavljanje ovih asocijacija na traci ili mapi lokacije, stvara se objavljena zavisnost. Više informacija potražite u $webresource direktivi.

Belešku

Veb-resursi mogu zavisiti od drugih veb-resursa na osnovu relativnih veza. Na primer, HTML veb-resurs može da koristi CSS ili veb-resursa skripte. Silverlight veb-resurs prikazan van obrasca entiteta ili grafikona mora da ima HTML veb-resurs da bi ga hostovao. Ove zavisnosti se ne prate kao zavisnosti od rešenja.

Takođe pogledajte

Koncepti rešenja
Uklanjanje zavisnosti
Strategija okruženja
Rad sa rešenjima pomoću SDK API-ja
Referentni entitet rešenja
Referentni entitet komponente rešenja