datamodel.itop-config-mgmt.xml 141 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  3. <classes>
  4. <class id="Organization" _delta="define">
  5. <parent>cmdbAbstractObject</parent>
  6. <properties>
  7. <comment><![CDATA[/**
  8. * Persistent classes for a CMDB
  9. *
  10. * @author Erwan Taloc <erwan.taloc@combodo.com>
  11. * @author Romain Quetiez <romain.quetiez@combodo.com>
  12. * @author Denis Flaven <denis.flaven@combodo.com>
  13. * @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
  14. */]]></comment>
  15. <category>bizmodel,searchable,structure</category>
  16. <abstract>false</abstract>
  17. <key_type>autoincrement</key_type>
  18. <db_table>organization</db_table>
  19. <db_key_field>id</db_key_field>
  20. <db_final_class_field></db_final_class_field>
  21. <naming>
  22. <format>%1$s</format>
  23. <attributes>
  24. <attribute id="name"/>
  25. </attributes>
  26. </naming>
  27. <display_template></display_template>
  28. <icon></icon>
  29. <reconciliation>
  30. <attributes>
  31. <attribute id="name"/>
  32. </attributes>
  33. </reconciliation>
  34. </properties>
  35. <fields>
  36. <field id="name" xsi:type="AttributeString">
  37. <sql>name</sql>
  38. <default_value></default_value>
  39. <is_null_allowed>false</is_null_allowed>
  40. </field>
  41. <field id="code" xsi:type="AttributeString">
  42. <sql>code</sql>
  43. <default_value></default_value>
  44. <is_null_allowed>true</is_null_allowed>
  45. </field>
  46. <field id="status" xsi:type="AttributeEnum">
  47. <values>
  48. <value>active</value>
  49. <value>inactive</value>
  50. </values>
  51. <sql>status</sql>
  52. <default_value>active</default_value>
  53. <is_null_allowed>true</is_null_allowed>
  54. </field>
  55. <field id="parent_id" xsi:type="AttributeHierarchicalKey">
  56. <sql>parent_id</sql>
  57. <is_null_allowed>true</is_null_allowed>
  58. <on_target_delete>DEL_MANUAL</on_target_delete>
  59. </field>
  60. <field id="parent_name" xsi:type="AttributeExternalField">
  61. <extkey_attcode>parent_id</extkey_attcode>
  62. <target_attcode>name</target_attcode>
  63. </field>
  64. </fields>
  65. <methods/>
  66. <presentation>
  67. <details>
  68. <items>
  69. <item>name</item>
  70. <item>code</item>
  71. <item>status</item>
  72. <item>parent_id</item>
  73. </items>
  74. </details>
  75. <search>
  76. <items>
  77. <item>name</item>
  78. <item>code</item>
  79. <item>status</item>
  80. <item>parent_id</item>
  81. </items>
  82. </search>
  83. <list>
  84. <items>
  85. <item>status</item>
  86. <item>parent_id</item>
  87. </items>
  88. </list>
  89. </presentation>
  90. </class>
  91. <class id="Location" _delta="define">
  92. <parent>cmdbAbstractObject</parent>
  93. <properties>
  94. <category>bizmodel,searchable,structure</category>
  95. <abstract>false</abstract>
  96. <key_type>autoincrement</key_type>
  97. <db_table>location</db_table>
  98. <db_key_field>id</db_key_field>
  99. <db_final_class_field></db_final_class_field>
  100. <naming>
  101. <format>%1$s</format>
  102. <attributes>
  103. <attribute id="name"/>
  104. </attributes>
  105. </naming>
  106. <display_template></display_template>
  107. <icon>images/location.png</icon>
  108. <reconciliation>
  109. <attributes>
  110. <attribute id="name"/>
  111. <attribute id="org_id"/>
  112. <attribute id="org_name"/>
  113. </attributes>
  114. </reconciliation>
  115. </properties>
  116. <fields>
  117. <field id="name" xsi:type="AttributeString">
  118. <sql>name</sql>
  119. <default_value></default_value>
  120. <is_null_allowed>false</is_null_allowed>
  121. </field>
  122. <field id="status" xsi:type="AttributeEnum">
  123. <values>
  124. <value>active</value>
  125. <value>inactive</value>
  126. </values>
  127. <sql>status</sql>
  128. <default_value>active</default_value>
  129. <is_null_allowed>true</is_null_allowed>
  130. </field>
  131. <field id="org_id" xsi:type="AttributeExternalKey">
  132. <sql>org_id</sql>
  133. <target_class>Organization</target_class>
  134. <is_null_allowed>false</is_null_allowed>
  135. <on_target_delete>DEL_MANUAL</on_target_delete>
  136. <jointype></jointype>
  137. </field>
  138. <field id="org_name" xsi:type="AttributeExternalField">
  139. <extkey_attcode>org_id</extkey_attcode>
  140. <target_attcode>name</target_attcode>
  141. </field>
  142. <field id="address" xsi:type="AttributeText">
  143. <sql>address</sql>
  144. <default_value></default_value>
  145. <is_null_allowed>true</is_null_allowed>
  146. </field>
  147. <field id="postal_code" xsi:type="AttributeString">
  148. <sql>postal_code</sql>
  149. <default_value></default_value>
  150. <is_null_allowed>true</is_null_allowed>
  151. </field>
  152. <field id="city" xsi:type="AttributeString">
  153. <sql>city</sql>
  154. <default_value></default_value>
  155. <is_null_allowed>true</is_null_allowed>
  156. </field>
  157. <field id="country" xsi:type="AttributeString">
  158. <sql>country</sql>
  159. <default_value></default_value>
  160. <is_null_allowed>true</is_null_allowed>
  161. </field>
  162. <field id="parent_id" xsi:type="AttributeHierarchicalKey">
  163. <dependencies>
  164. <attribute id="org_id"/>
  165. </dependencies>
  166. <sql>parent_id</sql>
  167. <is_null_allowed>true</is_null_allowed>
  168. <on_target_delete>DEL_MANUAL</on_target_delete>
  169. <filter><![CDATA[SELECT Location AS L WHERE L.org_id = :this->org_id]]></filter>
  170. </field>
  171. <field id="parent_name" xsi:type="AttributeExternalField">
  172. <extkey_attcode>parent_id</extkey_attcode>
  173. <target_attcode>name</target_attcode>
  174. </field>
  175. <field id="contact_list" xsi:type="AttributeLinkedSet">
  176. <linked_class>Contact</linked_class>
  177. <ext_key_to_me>location_id</ext_key_to_me>
  178. <count_min>0</count_min>
  179. <count_max>0</count_max>
  180. </field>
  181. <field id="infra_list" xsi:type="AttributeLinkedSet">
  182. <linked_class>InfrastructureCI</linked_class>
  183. <ext_key_to_me>location_id</ext_key_to_me>
  184. <count_min>0</count_min>
  185. <count_max>0</count_max>
  186. </field>
  187. </fields>
  188. <methods/>
  189. <presentation>
  190. <details>
  191. <items>
  192. <item>name</item>
  193. <item>status</item>
  194. <item>org_id</item>
  195. <item>address</item>
  196. <item>postal_code</item>
  197. <item>city</item>
  198. <item>country</item>
  199. <item>parent_id</item>
  200. <item>contact_list</item>
  201. <item>infra_list</item>
  202. </items>
  203. </details>
  204. <search>
  205. <items>
  206. <item>name</item>
  207. <item>status</item>
  208. <item>org_id</item>
  209. <item>city</item>
  210. <item>country</item>
  211. <item>parent_id</item>
  212. </items>
  213. </search>
  214. <list>
  215. <items>
  216. <item>status</item>
  217. <item>org_id</item>
  218. <item>city</item>
  219. <item>country</item>
  220. </items>
  221. </list>
  222. </presentation>
  223. </class>
  224. <class id="Contact" _delta="define">
  225. <parent>cmdbAbstractObject</parent>
  226. <properties>
  227. <category>bizmodel,searchable,structure</category>
  228. <abstract>true</abstract>
  229. <key_type>autoincrement</key_type>
  230. <db_table>contact</db_table>
  231. <db_key_field>id</db_key_field>
  232. <db_final_class_field>finalclass</db_final_class_field>
  233. <naming>
  234. <format>%1$s</format>
  235. <attributes>
  236. <attribute id="name"/>
  237. </attributes>
  238. </naming>
  239. <display_template></display_template>
  240. <icon>images/team.png</icon>
  241. <reconciliation>
  242. <attributes>
  243. <attribute id="name"/>
  244. <attribute id="org_id"/>
  245. <attribute id="org_name"/>
  246. <attribute id="email"/>
  247. </attributes>
  248. </reconciliation>
  249. </properties>
  250. <fields>
  251. <field id="name" xsi:type="AttributeString">
  252. <sql>name</sql>
  253. <default_value></default_value>
  254. <is_null_allowed>false</is_null_allowed>
  255. </field>
  256. <field id="status" xsi:type="AttributeEnum">
  257. <values>
  258. <value>active</value>
  259. <value>inactive</value>
  260. </values>
  261. <sql>status</sql>
  262. <default_value>active</default_value>
  263. <is_null_allowed>false</is_null_allowed>
  264. </field>
  265. <field id="org_id" xsi:type="AttributeExternalKey">
  266. <sql>org_id</sql>
  267. <target_class>Organization</target_class>
  268. <is_null_allowed>false</is_null_allowed>
  269. <on_target_delete>DEL_MANUAL</on_target_delete>
  270. <jointype></jointype>
  271. </field>
  272. <field id="org_name" xsi:type="AttributeExternalField">
  273. <extkey_attcode>org_id</extkey_attcode>
  274. <target_attcode>name</target_attcode>
  275. </field>
  276. <field id="email" xsi:type="AttributeEmailAddress">
  277. <sql>email</sql>
  278. <default_value></default_value>
  279. <is_null_allowed>false</is_null_allowed>
  280. </field>
  281. <field id="phone" xsi:type="AttributeString">
  282. <sql>phone</sql>
  283. <default_value></default_value>
  284. <is_null_allowed>true</is_null_allowed>
  285. </field>
  286. <field id="location_id" xsi:type="AttributeExternalKey">
  287. <filter><![CDATA[SELECT Location AS L WHERE L.org_id = :this->org_id]]></filter>
  288. <dependencies>
  289. <attribute id="org_id"/>
  290. </dependencies>
  291. <sql>location_id</sql>
  292. <target_class>Location</target_class>
  293. <is_null_allowed>true</is_null_allowed>
  294. <on_target_delete>DEL_MANUAL</on_target_delete>
  295. <jointype></jointype>
  296. </field>
  297. <field id="location_name" xsi:type="AttributeExternalField">
  298. <extkey_attcode>location_id</extkey_attcode>
  299. <target_attcode>name</target_attcode>
  300. </field>
  301. <field id="contract_list" xsi:type="AttributeLinkedSetIndirect">
  302. <linked_class>lnkContractToContact</linked_class>
  303. <ext_key_to_me>contact_id</ext_key_to_me>
  304. <count_min>0</count_min>
  305. <count_max>0</count_max>
  306. <ext_key_to_remote>contract_id</ext_key_to_remote>
  307. </field>
  308. <field id="service_list" xsi:type="AttributeLinkedSetIndirect">
  309. <linked_class>lnkServiceToContact</linked_class>
  310. <ext_key_to_me>contact_id</ext_key_to_me>
  311. <count_min>0</count_min>
  312. <count_max>0</count_max>
  313. <ext_key_to_remote>service_id</ext_key_to_remote>
  314. </field>
  315. <field id="ticket_list" xsi:type="AttributeLinkedSetIndirect">
  316. <linked_class>lnkTicketToContact</linked_class>
  317. <ext_key_to_me>contact_id</ext_key_to_me>
  318. <count_min>0</count_min>
  319. <count_max>0</count_max>
  320. <ext_key_to_remote>ticket_id</ext_key_to_remote>
  321. </field>
  322. <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
  323. <linked_class>lnkCIToContact</linked_class>
  324. <ext_key_to_me>contact_id</ext_key_to_me>
  325. <count_min>0</count_min>
  326. <count_max>0</count_max>
  327. <ext_key_to_remote>ci_id</ext_key_to_remote>
  328. </field>
  329. <field id="team_list" xsi:type="AttributeLinkedSetIndirect">
  330. <linked_class>lnkTeamToContact</linked_class>
  331. <ext_key_to_me>contact_id</ext_key_to_me>
  332. <count_min>0</count_min>
  333. <count_max>0</count_max>
  334. <ext_key_to_remote>team_id</ext_key_to_remote>
  335. </field>
  336. </fields>
  337. <methods/>
  338. <presentation>
  339. <details>
  340. <items>
  341. <item>name</item>
  342. <item>status</item>
  343. <item>org_id</item>
  344. <item>email</item>
  345. <item>phone</item>
  346. <item>location_id</item>
  347. <item>contract_list</item>
  348. <item>service_list</item>
  349. <item>ticket_list</item>
  350. <item>ci_list</item>
  351. <item>team_list</item>
  352. </items>
  353. </details>
  354. <search>
  355. <items>
  356. <item>name</item>
  357. <item>status</item>
  358. <item>org_id</item>
  359. <item>email</item>
  360. <item>phone</item>
  361. <item>location_id</item>
  362. </items>
  363. </search>
  364. <list>
  365. <items>
  366. <item>finalclass</item>
  367. <item>status</item>
  368. <item>org_id</item>
  369. <item>email</item>
  370. <item>phone</item>
  371. <item>location_id</item>
  372. </items>
  373. </list>
  374. </presentation>
  375. </class>
  376. <class id="Person" _delta="define">
  377. <parent>Contact</parent>
  378. <properties>
  379. <category>bizmodel,searchable,structure</category>
  380. <abstract>false</abstract>
  381. <key_type>autoincrement</key_type>
  382. <db_table>person</db_table>
  383. <db_key_field>id</db_key_field>
  384. <db_final_class_field></db_final_class_field>
  385. <naming>
  386. <format>%1$s %2$s</format>
  387. <attributes>
  388. <attribute id="first_name"/>
  389. <attribute id="name"/>
  390. </attributes>
  391. </naming>
  392. <display_template></display_template>
  393. <icon>images/person.png</icon>
  394. <reconciliation>
  395. <attributes>
  396. <attribute id="name"/>
  397. <attribute id="first_name"/>
  398. <attribute id="org_id"/>
  399. <attribute id="email"/>
  400. </attributes>
  401. </reconciliation>
  402. </properties>
  403. <fields>
  404. <field id="first_name" xsi:type="AttributeString">
  405. <sql>first_name</sql>
  406. <default_value></default_value>
  407. <is_null_allowed>false</is_null_allowed>
  408. </field>
  409. <field id="employee_id" xsi:type="AttributeString">
  410. <sql>employee_id</sql>
  411. <default_value></default_value>
  412. <is_null_allowed>true</is_null_allowed>
  413. </field>
  414. </fields>
  415. <methods/>
  416. <presentation>
  417. <details>
  418. <items>
  419. <item>name</item>
  420. <item>first_name</item>
  421. <item>org_id</item>
  422. <item>status</item>
  423. <item>location_id</item>
  424. <item>email</item>
  425. <item>phone</item>
  426. <item>employee_id</item>
  427. <item>team_list</item>
  428. <item>contract_list</item>
  429. <item>service_list</item>
  430. <item>ticket_list</item>
  431. <item>ci_list</item>
  432. </items>
  433. </details>
  434. <search>
  435. <items>
  436. <item>name</item>
  437. <item>status</item>
  438. <item>org_id</item>
  439. <item>email</item>
  440. <item>phone</item>
  441. <item>location_id</item>
  442. <item>first_name</item>
  443. <item>employee_id</item>
  444. </items>
  445. </search>
  446. <list>
  447. <items>
  448. <item>name</item>
  449. <item>first_name</item>
  450. <item>status</item>
  451. <item>org_id</item>
  452. <item>email</item>
  453. <item>phone</item>
  454. <item>location_id</item>
  455. </items>
  456. </list>
  457. </presentation>
  458. </class>
  459. <class id="Team" _delta="define">
  460. <parent>Contact</parent>
  461. <properties>
  462. <category>bizmodel,searchable,structure</category>
  463. <abstract>false</abstract>
  464. <key_type>autoincrement</key_type>
  465. <db_table>team</db_table>
  466. <db_key_field>id</db_key_field>
  467. <db_final_class_field></db_final_class_field>
  468. <naming>
  469. <format>%1$s</format>
  470. <attributes>
  471. <attribute id="name"/>
  472. </attributes>
  473. </naming>
  474. <display_template></display_template>
  475. <icon>images/team.png</icon>
  476. <reconciliation>
  477. <attributes>
  478. <attribute id="name"/>
  479. <attribute id="org_id"/>
  480. </attributes>
  481. </reconciliation>
  482. </properties>
  483. <fields>
  484. <field id="member_list" xsi:type="AttributeLinkedSetIndirect">
  485. <linked_class>lnkTeamToContact</linked_class>
  486. <ext_key_to_me>team_id</ext_key_to_me>
  487. <count_min>0</count_min>
  488. <count_max>0</count_max>
  489. <ext_key_to_remote>contact_id</ext_key_to_remote>
  490. </field>
  491. </fields>
  492. <methods/>
  493. <presentation>
  494. <details>
  495. <items>
  496. <item>name</item>
  497. <item>status</item>
  498. <item>org_id</item>
  499. <item>location_id</item>
  500. <item>email</item>
  501. <item>phone</item>
  502. <item>member_list</item>
  503. <item>contract_list</item>
  504. <item>service_list</item>
  505. <item>ticket_list</item>
  506. <item>ci_list</item>
  507. <item>team_list</item>
  508. </items>
  509. </details>
  510. <search>
  511. <items>
  512. <item>name</item>
  513. <item>status</item>
  514. <item>org_id</item>
  515. <item>email</item>
  516. <item>phone</item>
  517. <item>location_id</item>
  518. </items>
  519. </search>
  520. <list>
  521. <items>
  522. <item>status</item>
  523. <item>org_id</item>
  524. <item>email</item>
  525. <item>phone</item>
  526. <item>location_id</item>
  527. </items>
  528. </list>
  529. </presentation>
  530. </class>
  531. <class id="lnkTeamToContact" _delta="define">
  532. <parent>cmdbAbstractObject</parent>
  533. <properties>
  534. <is_link>1</is_link>
  535. <category>bizmodel,searchable,structure</category>
  536. <abstract>false</abstract>
  537. <key_type>autoincrement</key_type>
  538. <db_table>lnkteamtocontact</db_table>
  539. <db_key_field>id</db_key_field>
  540. <db_final_class_field></db_final_class_field>
  541. <naming>
  542. <format>%1$s</format>
  543. <attributes>
  544. <attribute id="team_id"/>
  545. </attributes>
  546. </naming>
  547. <display_template></display_template>
  548. <icon></icon>
  549. <reconciliation>
  550. <attributes>
  551. <attribute id=""/>
  552. </attributes>
  553. </reconciliation>
  554. </properties>
  555. <fields>
  556. <field id="team_id" xsi:type="AttributeExternalKey">
  557. <sql>team_id</sql>
  558. <target_class>Team</target_class>
  559. <is_null_allowed>false</is_null_allowed>
  560. <on_target_delete>DEL_AUTO</on_target_delete>
  561. <jointype></jointype>
  562. </field>
  563. <field id="team_name" xsi:type="AttributeExternalField">
  564. <extkey_attcode>team_id</extkey_attcode>
  565. <target_attcode>name</target_attcode>
  566. </field>
  567. <field id="contact_id" xsi:type="AttributeExternalKey">
  568. <sql>contact_id</sql>
  569. <target_class>Contact</target_class>
  570. <is_null_allowed>false</is_null_allowed>
  571. <on_target_delete>DEL_AUTO</on_target_delete>
  572. <jointype></jointype>
  573. </field>
  574. <field id="contact_name" xsi:type="AttributeExternalField">
  575. <extkey_attcode>contact_id</extkey_attcode>
  576. <target_attcode>name</target_attcode>
  577. </field>
  578. <field id="contact_location_id" xsi:type="AttributeExternalField">
  579. <extkey_attcode>contact_id</extkey_attcode>
  580. <target_attcode>location_id</target_attcode>
  581. </field>
  582. <field id="contact_location_name" xsi:type="AttributeExternalField">
  583. <extkey_attcode>contact_id</extkey_attcode>
  584. <target_attcode>location_name</target_attcode>
  585. </field>
  586. <field id="contact_email" xsi:type="AttributeExternalField">
  587. <extkey_attcode>contact_id</extkey_attcode>
  588. <target_attcode>email</target_attcode>
  589. </field>
  590. <field id="contact_phone" xsi:type="AttributeExternalField">
  591. <extkey_attcode>contact_id</extkey_attcode>
  592. <target_attcode>phone</target_attcode>
  593. </field>
  594. <field id="role" xsi:type="AttributeString">
  595. <sql>role</sql>
  596. <default_value></default_value>
  597. <is_null_allowed>true</is_null_allowed>
  598. </field>
  599. </fields>
  600. <methods/>
  601. <presentation>
  602. <details>
  603. <items>
  604. <item>team_id</item>
  605. <item>contact_id</item>
  606. <item>role</item>
  607. </items>
  608. </details>
  609. <search>
  610. <items>
  611. <item>team_id</item>
  612. <item>contact_id</item>
  613. <item>role</item>
  614. </items>
  615. </search>
  616. <list>
  617. <items>
  618. <item>team_id</item>
  619. <item>contact_id</item>
  620. <item>contact_location_id</item>
  621. <item>contact_email</item>
  622. <item>contact_phone</item>
  623. <item>role</item>
  624. </items>
  625. </list>
  626. </presentation>
  627. </class>
  628. <class id="Document" _delta="define">
  629. <parent>cmdbAbstractObject</parent>
  630. <properties>
  631. <category>bizmodel,searchable,documentation</category>
  632. <abstract>true</abstract>
  633. <key_type>autoincrement</key_type>
  634. <db_table>document</db_table>
  635. <db_key_field>id</db_key_field>
  636. <db_final_class_field>finalclass</db_final_class_field>
  637. <naming>
  638. <format>%1$s</format>
  639. <attributes>
  640. <attribute id="name"/>
  641. </attributes>
  642. </naming>
  643. <display_template></display_template>
  644. <icon>images/document.png</icon>
  645. <reconciliation>
  646. <attributes>
  647. <attribute id="name"/>
  648. <attribute id="org_id"/>
  649. <attribute id="org_name"/>
  650. </attributes>
  651. </reconciliation>
  652. </properties>
  653. <fields>
  654. <field id="name" xsi:type="AttributeString">
  655. <sql>name</sql>
  656. <default_value></default_value>
  657. <is_null_allowed>false</is_null_allowed>
  658. </field>
  659. <field id="org_id" xsi:type="AttributeExternalKey">
  660. <sql>org_id</sql>
  661. <target_class>Organization</target_class>
  662. <is_null_allowed>false</is_null_allowed>
  663. <on_target_delete>DEL_MANUAL</on_target_delete>
  664. <jointype></jointype>
  665. </field>
  666. <field id="org_name" xsi:type="AttributeExternalField">
  667. <extkey_attcode>org_id</extkey_attcode>
  668. <target_attcode>name</target_attcode>
  669. </field>
  670. <field id="description" xsi:type="AttributeText">
  671. <sql>description</sql>
  672. <default_value></default_value>
  673. <is_null_allowed>true</is_null_allowed>
  674. </field>
  675. <field id="type" xsi:type="AttributeEnum">
  676. <values>
  677. <value>contract</value>
  678. <value>networkmap</value>
  679. <value>presentation</value>
  680. <value>training</value>
  681. <value>whitePaper</value>
  682. <value>workinginstructions</value>
  683. </values>
  684. <sql>type</sql>
  685. <default_value>presentation</default_value>
  686. <is_null_allowed>true</is_null_allowed>
  687. </field>
  688. <field id="status" xsi:type="AttributeEnum">
  689. <values>
  690. <value>draft</value>
  691. <value>published</value>
  692. <value>obsolete</value>
  693. </values>
  694. <sql>status</sql>
  695. <default_value>draft</default_value>
  696. <is_null_allowed>false</is_null_allowed>
  697. </field>
  698. <field id="contract_list" xsi:type="AttributeLinkedSetIndirect">
  699. <linked_class>lnkContractToDoc</linked_class>
  700. <ext_key_to_me>document_id</ext_key_to_me>
  701. <count_min>0</count_min>
  702. <count_max>0</count_max>
  703. <ext_key_to_remote>contract_id</ext_key_to_remote>
  704. </field>
  705. <field id="service_list" xsi:type="AttributeLinkedSetIndirect">
  706. <linked_class>lnkServiceToDoc</linked_class>
  707. <ext_key_to_me>document_id</ext_key_to_me>
  708. <count_min>0</count_min>
  709. <count_max>0</count_max>
  710. <ext_key_to_remote>service_id</ext_key_to_remote>
  711. </field>
  712. <field id="ticket_list" xsi:type="AttributeLinkedSetIndirect">
  713. <linked_class>lnkTicketToDoc</linked_class>
  714. <ext_key_to_me>document_id</ext_key_to_me>
  715. <count_min>0</count_min>
  716. <count_max>0</count_max>
  717. <ext_key_to_remote>ticket_id</ext_key_to_remote>
  718. </field>
  719. <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
  720. <linked_class>lnkCIToDoc</linked_class>
  721. <ext_key_to_me>document_id</ext_key_to_me>
  722. <count_min>0</count_min>
  723. <count_max>0</count_max>
  724. <ext_key_to_remote>ci_id</ext_key_to_remote>
  725. </field>
  726. </fields>
  727. <methods/>
  728. <presentation>
  729. <details>
  730. <items>
  731. <item>name</item>
  732. <item>org_id</item>
  733. <item>description</item>
  734. <item>type</item>
  735. <item>status</item>
  736. <item>contract_list</item>
  737. <item>service_list</item>
  738. <item>ticket_list</item>
  739. <item>ci_list</item>
  740. </items>
  741. </details>
  742. <search>
  743. <items>
  744. <item>name</item>
  745. <item>org_id</item>
  746. <item>description</item>
  747. <item>type</item>
  748. <item>status</item>
  749. </items>
  750. </search>
  751. <list>
  752. <items>
  753. <item>org_id</item>
  754. <item>type</item>
  755. <item>status</item>
  756. </items>
  757. </list>
  758. </presentation>
  759. </class>
  760. <class id="WebDoc" _delta="define">
  761. <parent>Document</parent>
  762. <properties>
  763. <category>bizmodel,searchable,documentation</category>
  764. <abstract>false</abstract>
  765. <key_type>autoincrement</key_type>
  766. <db_table>externaldoc</db_table>
  767. <db_key_field>id</db_key_field>
  768. <db_final_class_field></db_final_class_field>
  769. <naming>
  770. <format>%1$s</format>
  771. <attributes>
  772. <attribute id="name"/>
  773. </attributes>
  774. </naming>
  775. <display_template></display_template>
  776. <icon>images/document.png</icon>
  777. <reconciliation>
  778. <attributes>
  779. <attribute id="name"/>
  780. <attribute id="org_id"/>
  781. <attribute id="org_name"/>
  782. </attributes>
  783. </reconciliation>
  784. </properties>
  785. <fields>
  786. <field id="url" xsi:type="AttributeURL">
  787. <sql>url</sql>
  788. <default_value></default_value>
  789. <is_null_allowed>false</is_null_allowed>
  790. <target>_blank</target>
  791. </field>
  792. </fields>
  793. <methods/>
  794. <presentation>
  795. <details>
  796. <items>
  797. <item>name</item>
  798. <item>org_id</item>
  799. <item>description</item>
  800. <item>type</item>
  801. <item>status</item>
  802. <item>contract_list</item>
  803. <item>service_list</item>
  804. <item>ticket_list</item>
  805. <item>ci_list</item>
  806. <item>url</item>
  807. </items>
  808. </details>
  809. <search>
  810. <items>
  811. <item>name</item>
  812. <item>org_id</item>
  813. <item>description</item>
  814. <item>type</item>
  815. <item>status</item>
  816. <item>url</item>
  817. </items>
  818. </search>
  819. <list>
  820. <items>
  821. <item>org_id</item>
  822. <item>type</item>
  823. <item>status</item>
  824. <item>url</item>
  825. </items>
  826. </list>
  827. </presentation>
  828. </class>
  829. <class id="Note" _delta="define">
  830. <parent>Document</parent>
  831. <properties>
  832. <category>bizmodel,searchable,documentation</category>
  833. <abstract>false</abstract>
  834. <key_type>autoincrement</key_type>
  835. <db_table>note</db_table>
  836. <db_key_field>id</db_key_field>
  837. <db_final_class_field></db_final_class_field>
  838. <naming>
  839. <format>%1$s</format>
  840. <attributes>
  841. <attribute id="name"/>
  842. </attributes>
  843. </naming>
  844. <display_template></display_template>
  845. <icon>images/document.png</icon>
  846. <reconciliation>
  847. <attributes>
  848. <attribute id="name"/>
  849. <attribute id="org_id"/>
  850. <attribute id="org_name"/>
  851. </attributes>
  852. </reconciliation>
  853. </properties>
  854. <fields>
  855. <field id="note" xsi:type="AttributeText">
  856. <sql>note</sql>
  857. <default_value></default_value>
  858. <is_null_allowed>true</is_null_allowed>
  859. </field>
  860. </fields>
  861. <methods/>
  862. <presentation>
  863. <details>
  864. <items>
  865. <item>name</item>
  866. <item>org_id</item>
  867. <item>description</item>
  868. <item>type</item>
  869. <item>status</item>
  870. <item>contract_list</item>
  871. <item>service_list</item>
  872. <item>ticket_list</item>
  873. <item>ci_list</item>
  874. <item>note</item>
  875. </items>
  876. </details>
  877. <search>
  878. <items>
  879. <item>name</item>
  880. <item>org_id</item>
  881. <item>description</item>
  882. <item>type</item>
  883. <item>status</item>
  884. <item>note</item>
  885. </items>
  886. </search>
  887. <list>
  888. <items>
  889. <item>org_id</item>
  890. <item>type</item>
  891. <item>status</item>
  892. <item>note</item>
  893. </items>
  894. </list>
  895. </presentation>
  896. </class>
  897. <class id="FileDoc" _delta="define">
  898. <parent>Document</parent>
  899. <properties>
  900. <category>bizmodel,searchable,documentation</category>
  901. <abstract>false</abstract>
  902. <key_type>autoincrement</key_type>
  903. <db_table>filedoc</db_table>
  904. <db_key_field>id</db_key_field>
  905. <db_final_class_field></db_final_class_field>
  906. <naming>
  907. <format>%1$s</format>
  908. <attributes>
  909. <attribute id="name"/>
  910. </attributes>
  911. </naming>
  912. <display_template></display_template>
  913. <icon>images/document.png</icon>
  914. <reconciliation>
  915. <attributes>
  916. <attribute id="name"/>
  917. <attribute id="org_id"/>
  918. <attribute id="org_name"/>
  919. </attributes>
  920. </reconciliation>
  921. </properties>
  922. <fields>
  923. <field id="contents" xsi:type="AttributeBlob"/>
  924. </fields>
  925. <methods>
  926. <method id="DisplayBareProperties">
  927. <comment>/**
  928. * Overload the display of the properties to add a tab (the first one)
  929. * with the preview of the document
  930. */</comment>
  931. <static>false</static>
  932. <access>public</access>
  933. <type>Overload-cmdbAbstractObject</type>
  934. <code><![CDATA[ public function DisplayBareProperties(WebPage $oPage, $bEditMode = false, $sPrefix = '', $aExtraParams = array())
  935. {
  936. if (!$bEditMode)
  937. {
  938. $oPage->SetCurrentTab(Dict::S('Class:Document:PreviewTab'));
  939. $oPage->add($this->DisplayDocumentInline($oPage, 'contents'));
  940. $oPage->SetCurrentTab(Dict::S('UI:PropertiesTab'));
  941. }
  942. parent::DisplayBareProperties($oPage, $bEditMode, $sPrefix, $aExtraParams);
  943. }]]></code>
  944. </method>
  945. </methods>
  946. <presentation>
  947. <details>
  948. <items>
  949. <item>name</item>
  950. <item>org_id</item>
  951. <item>description</item>
  952. <item>type</item>
  953. <item>status</item>
  954. <item>contract_list</item>
  955. <item>service_list</item>
  956. <item>ticket_list</item>
  957. <item>ci_list</item>
  958. <item>contents</item>
  959. </items>
  960. </details>
  961. <search>
  962. <items>
  963. <item>name</item>
  964. <item>org_id</item>
  965. <item>description</item>
  966. <item>type</item>
  967. <item>status</item>
  968. </items>
  969. </search>
  970. <list>
  971. <items>
  972. <item>org_id</item>
  973. <item>type</item>
  974. <item>status</item>
  975. <item>contents</item>
  976. </items>
  977. </list>
  978. </presentation>
  979. </class>
  980. <class id="Licence" _delta="define">
  981. <parent>cmdbAbstractObject</parent>
  982. <properties>
  983. <category>bizmodel,searchable,configmgmt</category>
  984. <abstract>false</abstract>
  985. <key_type>autoincrement</key_type>
  986. <db_table>licence</db_table>
  987. <db_key_field>id</db_key_field>
  988. <db_final_class_field></db_final_class_field>
  989. <naming>
  990. <format>%1$s</format>
  991. <attributes>
  992. <attribute id="name"/>
  993. </attributes>
  994. </naming>
  995. <display_template></display_template>
  996. <icon>images/licence.png</icon>
  997. <reconciliation>
  998. <attributes>
  999. <attribute id="name"/>
  1000. <attribute id="org_id"/>
  1001. <attribute id="org_name"/>
  1002. </attributes>
  1003. </reconciliation>
  1004. </properties>
  1005. <fields>
  1006. <field id="provider" xsi:type="AttributeString">
  1007. <sql>provider</sql>
  1008. <default_value></default_value>
  1009. <is_null_allowed>false</is_null_allowed>
  1010. </field>
  1011. <field id="org_id" xsi:type="AttributeExternalKey">
  1012. <sql>org_id</sql>
  1013. <target_class>Organization</target_class>
  1014. <is_null_allowed>false</is_null_allowed>
  1015. <on_target_delete>DEL_MANUAL</on_target_delete>
  1016. <jointype></jointype>
  1017. </field>
  1018. <field id="org_name" xsi:type="AttributeExternalField">
  1019. <extkey_attcode>org_id</extkey_attcode>
  1020. <target_attcode>name</target_attcode>
  1021. </field>
  1022. <field id="product" xsi:type="AttributeString">
  1023. <sql>product</sql>
  1024. <default_value></default_value>
  1025. <is_null_allowed>false</is_null_allowed>
  1026. </field>
  1027. <field id="name" xsi:type="AttributeString">
  1028. <sql>name</sql>
  1029. <default_value></default_value>
  1030. <is_null_allowed>false</is_null_allowed>
  1031. </field>
  1032. <field id="start" xsi:type="AttributeDate">
  1033. <sql>start</sql>
  1034. <default_value></default_value>
  1035. <is_null_allowed>true</is_null_allowed>
  1036. </field>
  1037. <field id="end" xsi:type="AttributeDate">
  1038. <sql>end</sql>
  1039. <default_value></default_value>
  1040. <is_null_allowed>true</is_null_allowed>
  1041. </field>
  1042. <field id="licence_key" xsi:type="AttributeString">
  1043. <sql>licence_key</sql>
  1044. <default_value></default_value>
  1045. <is_null_allowed>true</is_null_allowed>
  1046. </field>
  1047. <field id="scope" xsi:type="AttributeText">
  1048. <sql>scope</sql>
  1049. <default_value></default_value>
  1050. <is_null_allowed>true</is_null_allowed>
  1051. </field>
  1052. <field id="usage_limit" xsi:type="AttributeInteger">
  1053. <sql>usage_limit</sql>
  1054. <default_value></default_value>
  1055. <is_null_allowed>true</is_null_allowed>
  1056. </field>
  1057. <field id="usage_list" xsi:type="AttributeLinkedSet">
  1058. <linked_class>SoftwareInstance</linked_class>
  1059. <ext_key_to_me>licence_id</ext_key_to_me>
  1060. <count_min>0</count_min>
  1061. <count_max>0</count_max>
  1062. </field>
  1063. </fields>
  1064. <methods/>
  1065. <presentation>
  1066. <details>
  1067. <items>
  1068. <item>name</item>
  1069. <item>org_id</item>
  1070. <item>provider</item>
  1071. <item>product</item>
  1072. <item>start</item>
  1073. <item>end</item>
  1074. <item>licence_key</item>
  1075. <item>scope</item>
  1076. <item>usage_limit</item>
  1077. <item>usage_list</item>
  1078. </items>
  1079. </details>
  1080. <search>
  1081. <items>
  1082. <item>org_id</item>
  1083. <item>provider</item>
  1084. <item>product</item>
  1085. <item>name</item>
  1086. <item>start</item>
  1087. <item>end</item>
  1088. <item>licence_key</item>
  1089. <item>scope</item>
  1090. </items>
  1091. </search>
  1092. <list>
  1093. <items>
  1094. <item>org_id</item>
  1095. <item>provider</item>
  1096. <item>product</item>
  1097. <item>start</item>
  1098. <item>end</item>
  1099. </items>
  1100. </list>
  1101. </presentation>
  1102. </class>
  1103. <class id="Subnet" _delta="define">
  1104. <parent>cmdbAbstractObject</parent>
  1105. <properties>
  1106. <category>bizmodel,searchable,configmgmt</category>
  1107. <abstract>false</abstract>
  1108. <key_type>autoincrement</key_type>
  1109. <db_table>subnet</db_table>
  1110. <db_key_field>id</db_key_field>
  1111. <db_final_class_field></db_final_class_field>
  1112. <naming>
  1113. <format>%1$s / %2$s</format>
  1114. <attributes>
  1115. <attribute id="ip"/>
  1116. <attribute id="ip_mask"/>
  1117. </attributes>
  1118. </naming>
  1119. <display_template></display_template>
  1120. <icon>images/subnet.png</icon>
  1121. <reconciliation>
  1122. <attributes>
  1123. <attribute id="ip"/>
  1124. <attribute id="ip_mask"/>
  1125. <attribute id="org_id"/>
  1126. <attribute id="org_name"/>
  1127. </attributes>
  1128. </reconciliation>
  1129. </properties>
  1130. <fields>
  1131. <field id="description" xsi:type="AttributeText">
  1132. <sql>description</sql>
  1133. <default_value></default_value>
  1134. <is_null_allowed>true</is_null_allowed>
  1135. </field>
  1136. <field id="org_id" xsi:type="AttributeExternalKey">
  1137. <sql>org_id</sql>
  1138. <target_class>Organization</target_class>
  1139. <is_null_allowed>false</is_null_allowed>
  1140. <on_target_delete>DEL_MANUAL</on_target_delete>
  1141. <jointype></jointype>
  1142. </field>
  1143. <field id="org_name" xsi:type="AttributeExternalField">
  1144. <extkey_attcode>org_id</extkey_attcode>
  1145. <target_attcode>name</target_attcode>
  1146. </field>
  1147. <field id="ip" xsi:type="AttributeIPAddress">
  1148. <sql>ip</sql>
  1149. <default_value></default_value>
  1150. <is_null_allowed>false</is_null_allowed>
  1151. </field>
  1152. <field id="ip_mask" xsi:type="AttributeIPAddress">
  1153. <sql>ip_mask</sql>
  1154. <default_value></default_value>
  1155. <is_null_allowed>false</is_null_allowed>
  1156. </field>
  1157. </fields>
  1158. <methods>
  1159. <method id="DisplayBareRelations">
  1160. <static>false</static>
  1161. <access>public</access>
  1162. <type>Overload-cmdbAbstractObject</type>
  1163. <code><![CDATA[ function DisplayBareRelations(WebPage $oPage, $bEditMode = false)
  1164. {
  1165. parent::DisplayBareRelations($oPage, $bEditMode);
  1166. if (!$bEditMode)
  1167. {
  1168. $oPage->SetCurrentTab(Dict::S('Class:Subnet/Tab:IPUsage'));
  1169. $bit_ip = ip2long($this->Get('ip'));
  1170. $bit_mask = ip2long($this->Get('ip_mask'));
  1171. $iIPMin = sprintf('%u', ($bit_ip & $bit_mask) | 1); // exclude the first one: identifies the subnet itself
  1172. $iIPMax = sprintf('%u', (($bit_ip | (~$bit_mask))) & 0xfffffffe); // exclude the last one : broadcast address
  1173. $sIPMin = long2ip($iIPMin);
  1174. $sIPMax = long2ip($iIPMax);
  1175. $oPage->p(Dict::Format('Class:Subnet/Tab:IPUsage-explain', $sIPMin, $sIPMax));
  1176. $oIfFilter = DBObjectSearch::FromOQL("SELECT NetworkInterface AS if WHERE INET_ATON(if.ip_address) >= INET_ATON('$sIPMin') AND INET_ATON(if.ip_address) <= INET_ATON('$sIPMax')");
  1177. $oIfSet = new CMDBObjectSet($oIfFilter);
  1178. $oBlock = new DisplayBlock($oIfFilter, 'list', false);
  1179. $oBlock->Display($oPage, 'nwif', array('menu' => false));
  1180. $iCountUsed = $oIfSet->Count();
  1181. $iCountRange = $iIPMax - $iIPMin; // On 32-bit systems the substraction will be computed using floats for values greater than PHP_MAX_INT;
  1182. $iFreeCount = $iCountRange - $iCountUsed;
  1183. $oPage->SetCurrentTab(Dict::S('Class:Subnet/Tab:FreeIPs'));
  1184. $oPage->p(Dict::Format('Class:Subnet/Tab:FreeIPs-count', $iFreeCount));
  1185. $oPage->p(Dict::S('Class:Subnet/Tab:FreeIPs-explain'));
  1186. $aUsedIPs = $oIfSet->GetColumnAsArray('ip_address', false);
  1187. $iAnIP = $iIPMin;
  1188. $iFound = 0;
  1189. while (($iFound < min($iFreeCount, 10)) && ($iAnIP <= $iIPMax))
  1190. {
  1191. $sAnIP = long2ip($iAnIP);
  1192. if (!in_array($sAnIP, $aUsedIPs))
  1193. {
  1194. $iFound++;
  1195. $oPage->p($sAnIP);
  1196. }
  1197. else
  1198. {
  1199. }
  1200. $iAnIP++;
  1201. }
  1202. }
  1203. }]]></code>
  1204. </method>
  1205. </methods>
  1206. <presentation>
  1207. <details>
  1208. <items>
  1209. <item>ip</item>
  1210. <item>ip_mask</item>
  1211. <item>org_id</item>
  1212. <item>description</item>
  1213. </items>
  1214. </details>
  1215. <search>
  1216. <items>
  1217. <item>ip</item>
  1218. <item>ip_mask</item>
  1219. <item>org_id</item>
  1220. <item>description</item>
  1221. </items>
  1222. </search>
  1223. <list>
  1224. <items>
  1225. <item>ip</item>
  1226. <item>ip_mask</item>
  1227. <item>org_id</item>
  1228. </items>
  1229. </list>
  1230. </presentation>
  1231. </class>
  1232. <class id="Patch" _delta="define">
  1233. <parent>cmdbAbstractObject</parent>
  1234. <properties>
  1235. <category>bizmodel,searchable,configmgmt</category>
  1236. <abstract>false</abstract>
  1237. <key_type>autoincrement</key_type>
  1238. <db_table>patch</db_table>
  1239. <db_key_field>id</db_key_field>
  1240. <db_final_class_field></db_final_class_field>
  1241. <naming>
  1242. <format>%1$s</format>
  1243. <attributes>
  1244. <attribute id="name"/>
  1245. </attributes>
  1246. </naming>
  1247. <display_template></display_template>
  1248. <icon>images/patch.png</icon>
  1249. <reconciliation>
  1250. <attributes>
  1251. <attribute id="name"/>
  1252. </attributes>
  1253. </reconciliation>
  1254. </properties>
  1255. <fields>
  1256. <field id="name" xsi:type="AttributeString">
  1257. <sql>name</sql>
  1258. <default_value></default_value>
  1259. <is_null_allowed>false</is_null_allowed>
  1260. </field>
  1261. <field id="description" xsi:type="AttributeText">
  1262. <sql>description</sql>
  1263. <default_value></default_value>
  1264. <is_null_allowed>true</is_null_allowed>
  1265. </field>
  1266. <field id="target_sw" xsi:type="AttributeString">
  1267. <sql>target_sw</sql>
  1268. <default_value></default_value>
  1269. <is_null_allowed>true</is_null_allowed>
  1270. </field>
  1271. <field id="version" xsi:type="AttributeString">
  1272. <sql>version</sql>
  1273. <default_value></default_value>
  1274. <is_null_allowed>true</is_null_allowed>
  1275. </field>
  1276. <field id="type" xsi:type="AttributeEnum">
  1277. <values>
  1278. <value>application</value>
  1279. <value>os</value>
  1280. <value>security</value>
  1281. <value>servicepack</value>
  1282. </values>
  1283. <sql>type</sql>
  1284. <default_value>security</default_value>
  1285. <is_null_allowed>false</is_null_allowed>
  1286. </field>
  1287. <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
  1288. <linked_class>lnkPatchToCI</linked_class>
  1289. <ext_key_to_me>patch_id</ext_key_to_me>
  1290. <count_min>0</count_min>
  1291. <count_max>0</count_max>
  1292. <ext_key_to_remote>ci_id</ext_key_to_remote>
  1293. </field>
  1294. </fields>
  1295. <methods/>
  1296. <presentation>
  1297. <details>
  1298. <items>
  1299. <item>name</item>
  1300. <item>description</item>
  1301. <item>target_sw</item>
  1302. <item>version</item>
  1303. <item>type</item>
  1304. <item>ci_list</item>
  1305. </items>
  1306. </details>
  1307. <search>
  1308. <items>
  1309. <item>name</item>
  1310. <item>target_sw</item>
  1311. <item>version</item>
  1312. <item>type</item>
  1313. <item>description</item>
  1314. </items>
  1315. </search>
  1316. <list>
  1317. <items>
  1318. <item>target_sw</item>
  1319. <item>version</item>
  1320. <item>type</item>
  1321. </items>
  1322. </list>
  1323. </presentation>
  1324. </class>
  1325. <class id="Software" _delta="define">
  1326. <parent>cmdbAbstractObject</parent>
  1327. <properties>
  1328. <category>bizmodel,searchable,configmgmt</category>
  1329. <abstract>true</abstract>
  1330. <key_type>autoincrement</key_type>
  1331. <db_table>software</db_table>
  1332. <db_key_field>id</db_key_field>
  1333. <db_final_class_field>finalclass</db_final_class_field>
  1334. <naming>
  1335. <format>%1$s</format>
  1336. <attributes>
  1337. <attribute id="name"/>
  1338. </attributes>
  1339. </naming>
  1340. <display_template></display_template>
  1341. <icon>images/software.png</icon>
  1342. <reconciliation>
  1343. <attributes>
  1344. <attribute id="name"/>
  1345. </attributes>
  1346. </reconciliation>
  1347. </properties>
  1348. <fields>
  1349. <field id="name" xsi:type="AttributeString">
  1350. <sql>name</sql>
  1351. <default_value></default_value>
  1352. <is_null_allowed>false</is_null_allowed>
  1353. </field>
  1354. <field id="description" xsi:type="AttributeText">
  1355. <sql>description</sql>
  1356. <default_value></default_value>
  1357. <is_null_allowed>true</is_null_allowed>
  1358. </field>
  1359. </fields>
  1360. <methods/>
  1361. <presentation>
  1362. <details>
  1363. <items>
  1364. <item>name</item>
  1365. <item>description</item>
  1366. </items>
  1367. </details>
  1368. <search>
  1369. <items>
  1370. <item>name</item>
  1371. <item>description</item>
  1372. </items>
  1373. </search>
  1374. <list>
  1375. <items>
  1376. <item>description</item>
  1377. </items>
  1378. </list>
  1379. </presentation>
  1380. </class>
  1381. <class id="Application" _delta="define">
  1382. <parent>Software</parent>
  1383. <properties>
  1384. <category>bizmodel,searchable,configmgmt</category>
  1385. <abstract>false</abstract>
  1386. <key_type>autoincrement</key_type>
  1387. <db_table>software_app</db_table>
  1388. <db_key_field>id</db_key_field>
  1389. <db_final_class_field></db_final_class_field>
  1390. <naming>
  1391. <format>%1$s</format>
  1392. <attributes>
  1393. <attribute id="name"/>
  1394. </attributes>
  1395. </naming>
  1396. <display_template></display_template>
  1397. <icon>images/software.png</icon>
  1398. <reconciliation>
  1399. <attributes>
  1400. <attribute id="name"/>
  1401. </attributes>
  1402. </reconciliation>
  1403. </properties>
  1404. <fields>
  1405. <field id="instance_list" xsi:type="AttributeLinkedSet">
  1406. <linked_class>ApplicationInstance</linked_class>
  1407. <ext_key_to_me>software_id</ext_key_to_me>
  1408. <count_min>0</count_min>
  1409. <count_max>0</count_max>
  1410. </field>
  1411. </fields>
  1412. <methods/>
  1413. <presentation>
  1414. <details>
  1415. <items>
  1416. <item>name</item>
  1417. <item>description</item>
  1418. <item>instance_list</item>
  1419. </items>
  1420. </details>
  1421. <search>
  1422. <items>
  1423. <item>name</item>
  1424. <item>description</item>
  1425. </items>
  1426. </search>
  1427. <list>
  1428. <items>
  1429. <item>description</item>
  1430. </items>
  1431. </list>
  1432. </presentation>
  1433. </class>
  1434. <class id="DBServer" _delta="define">
  1435. <parent>Software</parent>
  1436. <properties>
  1437. <category>bizmodel,searchable,configmgmt</category>
  1438. <abstract>false</abstract>
  1439. <key_type>autoincrement</key_type>
  1440. <db_table>software_db</db_table>
  1441. <db_key_field>id</db_key_field>
  1442. <db_final_class_field></db_final_class_field>
  1443. <naming>
  1444. <format>%1$s</format>
  1445. <attributes>
  1446. <attribute id="name"/>
  1447. </attributes>
  1448. </naming>
  1449. <display_template></display_template>
  1450. <icon>images/software.png</icon>
  1451. <reconciliation>
  1452. <attributes>
  1453. <attribute id="name"/>
  1454. </attributes>
  1455. </reconciliation>
  1456. </properties>
  1457. <fields>
  1458. <field id="instance_list" xsi:type="AttributeLinkedSet">
  1459. <linked_class>DBServerInstance</linked_class>
  1460. <ext_key_to_me>software_id</ext_key_to_me>
  1461. <count_min>0</count_min>
  1462. <count_max>0</count_max>
  1463. </field>
  1464. </fields>
  1465. <methods/>
  1466. <presentation>
  1467. <details>
  1468. <items>
  1469. <item>name</item>
  1470. <item>description</item>
  1471. <item>instance_list</item>
  1472. </items>
  1473. </details>
  1474. <search>
  1475. <items>
  1476. <item>name</item>
  1477. <item>description</item>
  1478. </items>
  1479. </search>
  1480. <list>
  1481. <items>
  1482. <item>description</item>
  1483. </items>
  1484. </list>
  1485. </presentation>
  1486. </class>
  1487. <class id="lnkPatchToCI" _delta="define">
  1488. <parent>cmdbAbstractObject</parent>
  1489. <properties>
  1490. <is_link>1</is_link>
  1491. <category>bizmodel,configmgmt</category>
  1492. <abstract>false</abstract>
  1493. <key_type>autoincrement</key_type>
  1494. <db_table>lnkpatchtoci</db_table>
  1495. <db_key_field>id</db_key_field>
  1496. <db_final_class_field></db_final_class_field>
  1497. <naming>
  1498. <format>%1$s</format>
  1499. <attributes>
  1500. <attribute id="patch_id"/>
  1501. </attributes>
  1502. </naming>
  1503. <display_template></display_template>
  1504. <icon></icon>
  1505. <reconciliation>
  1506. <attributes>
  1507. <attribute id="patch_id"/>
  1508. <attribute id="ci_id"/>
  1509. </attributes>
  1510. </reconciliation>
  1511. </properties>
  1512. <fields>
  1513. <field id="patch_id" xsi:type="AttributeExternalKey">
  1514. <sql>patch_id</sql>
  1515. <target_class>Patch</target_class>
  1516. <is_null_allowed>false</is_null_allowed>
  1517. <on_target_delete>DEL_AUTO</on_target_delete>
  1518. <jointype></jointype>
  1519. </field>
  1520. <field id="patch_name" xsi:type="AttributeExternalField">
  1521. <extkey_attcode>patch_id</extkey_attcode>
  1522. <target_attcode>name</target_attcode>
  1523. </field>
  1524. <field id="ci_id" xsi:type="AttributeExternalKey">
  1525. <sql>ci_id</sql>
  1526. <target_class>Device</target_class>
  1527. <is_null_allowed>false</is_null_allowed>
  1528. <on_target_delete>DEL_AUTO</on_target_delete>
  1529. <jointype></jointype>
  1530. </field>
  1531. <field id="ci_name" xsi:type="AttributeExternalField">
  1532. <extkey_attcode>ci_id</extkey_attcode>
  1533. <target_attcode>name</target_attcode>
  1534. </field>
  1535. <field id="ci_status" xsi:type="AttributeExternalField">
  1536. <extkey_attcode>ci_id</extkey_attcode>
  1537. <target_attcode>status</target_attcode>
  1538. </field>
  1539. </fields>
  1540. <methods/>
  1541. <presentation>
  1542. <details>
  1543. <items>
  1544. <item>patch_id</item>
  1545. <item>ci_id</item>
  1546. <item>ci_status</item>
  1547. </items>
  1548. </details>
  1549. <search>
  1550. <items>
  1551. <item>patch_id</item>
  1552. <item>ci_id</item>
  1553. </items>
  1554. </search>
  1555. <list>
  1556. <items>
  1557. <item>patch_id</item>
  1558. <item>ci_id</item>
  1559. <item>ci_status</item>
  1560. </items>
  1561. </list>
  1562. </presentation>
  1563. </class>
  1564. <class id="FunctionalCI" _delta="define">
  1565. <parent>cmdbAbstractObject</parent>
  1566. <properties>
  1567. <category>bizmodel,searchable,configmgmt</category>
  1568. <abstract>true</abstract>
  1569. <key_type>autoincrement</key_type>
  1570. <db_table>functionalci</db_table>
  1571. <db_key_field>id</db_key_field>
  1572. <db_final_class_field>finalclass</db_final_class_field>
  1573. <naming>
  1574. <format>%1$s</format>
  1575. <attributes>
  1576. <attribute id="name"/>
  1577. </attributes>
  1578. </naming>
  1579. <display_template></display_template>
  1580. <icon>images/server.png</icon>
  1581. <reconciliation>
  1582. <attributes>
  1583. <attribute id="name"/>
  1584. <attribute id="org_id"/>
  1585. <attribute id="owner_name"/>
  1586. </attributes>
  1587. </reconciliation>
  1588. </properties>
  1589. <fields>
  1590. <field id="name" xsi:type="AttributeString">
  1591. <sql>name</sql>
  1592. <default_value></default_value>
  1593. <is_null_allowed>false</is_null_allowed>
  1594. </field>
  1595. <field id="status" xsi:type="AttributeEnum">
  1596. <values>
  1597. <value>implementation</value>
  1598. <value>production</value>
  1599. <value>obsolete</value>
  1600. </values>
  1601. <sql>status</sql>
  1602. <default_value>implementation</default_value>
  1603. <is_null_allowed>false</is_null_allowed>
  1604. </field>
  1605. <field id="org_id" xsi:type="AttributeExternalKey">
  1606. <sql>org_id</sql>
  1607. <target_class>Organization</target_class>
  1608. <is_null_allowed>false</is_null_allowed>
  1609. <on_target_delete>DEL_MANUAL</on_target_delete>
  1610. <jointype></jointype>
  1611. </field>
  1612. <field id="owner_name" xsi:type="AttributeExternalField">
  1613. <extkey_attcode>org_id</extkey_attcode>
  1614. <target_attcode>name</target_attcode>
  1615. </field>
  1616. <field id="importance" xsi:type="AttributeEnum">
  1617. <values>
  1618. <value>low</value>
  1619. <value>medium</value>
  1620. <value>high</value>
  1621. </values>
  1622. <sql>importance</sql>
  1623. <default_value>medium</default_value>
  1624. <is_null_allowed>false</is_null_allowed>
  1625. </field>
  1626. <field id="contact_list" xsi:type="AttributeLinkedSetIndirect">
  1627. <linked_class>lnkCIToContact</linked_class>
  1628. <ext_key_to_me>ci_id</ext_key_to_me>
  1629. <count_min>0</count_min>
  1630. <count_max>0</count_max>
  1631. <ext_key_to_remote>contact_id</ext_key_to_remote>
  1632. </field>
  1633. <field id="document_list" xsi:type="AttributeLinkedSetIndirect">
  1634. <linked_class>lnkCIToDoc</linked_class>
  1635. <ext_key_to_me>ci_id</ext_key_to_me>
  1636. <count_min>0</count_min>
  1637. <count_max>0</count_max>
  1638. <ext_key_to_remote>document_id</ext_key_to_remote>
  1639. </field>
  1640. <field id="solution_list" xsi:type="AttributeLinkedSetIndirect">
  1641. <linked_class>lnkSolutionToCI</linked_class>
  1642. <ext_key_to_me>ci_id</ext_key_to_me>
  1643. <count_min>0</count_min>
  1644. <count_max>0</count_max>
  1645. <ext_key_to_remote>solution_id</ext_key_to_remote>
  1646. </field>
  1647. <field id="contract_list" xsi:type="AttributeLinkedSetIndirect">
  1648. <linked_class>lnkContractToCI</linked_class>
  1649. <ext_key_to_me>ci_id</ext_key_to_me>
  1650. <count_min>0</count_min>
  1651. <count_max>0</count_max>
  1652. <ext_key_to_remote>contract_id</ext_key_to_remote>
  1653. </field>
  1654. <field id="ticket_list" xsi:type="AttributeLinkedSetIndirect">
  1655. <linked_class>lnkTicketToCI</linked_class>
  1656. <ext_key_to_me>ci_id</ext_key_to_me>
  1657. <count_min>0</count_min>
  1658. <count_max>0</count_max>
  1659. <ext_key_to_remote>ticket_id</ext_key_to_remote>
  1660. </field>
  1661. </fields>
  1662. <methods>
  1663. <method id="GetRelationQueries">
  1664. <static>true</static>
  1665. <access>public</access>
  1666. <type>Overload-DBObject</type>
  1667. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  1668. {
  1669. switch ($sRelCode)
  1670. {
  1671. case "impacts":
  1672. $aRels = array(
  1673. "contact" => array("sQuery"=>"SELECT Contact AS c JOIN lnkCIToContact AS l1 ON l1.contact_id = c.id WHERE l1.ci_id = :this->id", "bPropagate"=>true, "iDistance"=>3),
  1674. "solution" => array("sQuery"=>"SELECT ApplicationSolution AS s JOIN lnkSolutionToCI AS l1 ON l1.solution_id = s.id WHERE l1.ci_id = :this->id", "bPropagate"=>true, "iDistance"=>2),
  1675. );
  1676. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  1677. break;
  1678. default:
  1679. return parent::GetRelationQueries($sRelCode);
  1680. }
  1681. }]]></code>
  1682. </method>
  1683. </methods>
  1684. <presentation>
  1685. <details>
  1686. <items>
  1687. <item>name</item>
  1688. <item>status</item>
  1689. <item>org_id</item>
  1690. <item>importance</item>
  1691. <item>contact_list</item>
  1692. <item>document_list</item>
  1693. <item>solution_list</item>
  1694. <item>contract_list</item>
  1695. <item>ticket_list</item>
  1696. </items>
  1697. </details>
  1698. <search>
  1699. <items>
  1700. <item>name</item>
  1701. <item>status</item>
  1702. <item>org_id</item>
  1703. <item>importance</item>
  1704. </items>
  1705. </search>
  1706. <list>
  1707. <items>
  1708. <item>finalclass</item>
  1709. <item>status</item>
  1710. <item>org_id</item>
  1711. <item>importance</item>
  1712. </items>
  1713. </list>
  1714. </presentation>
  1715. </class>
  1716. <class id="SoftwareInstance" _delta="define">
  1717. <parent>FunctionalCI</parent>
  1718. <properties>
  1719. <category>bizmodel,searchable,configmgmt</category>
  1720. <abstract>true</abstract>
  1721. <key_type>autoincrement</key_type>
  1722. <db_table>softwareinstance</db_table>
  1723. <db_key_field>id</db_key_field>
  1724. <db_final_class_field></db_final_class_field>
  1725. <naming>
  1726. <format>%1$s - %2$s</format>
  1727. <attributes>
  1728. <attribute id="name"/>
  1729. <attribute id="device_id_friendlyname"/>
  1730. </attributes>
  1731. </naming>
  1732. <display_template></display_template>
  1733. <icon>images/application.png</icon>
  1734. <reconciliation>
  1735. <attributes>
  1736. <attribute id="name"/>
  1737. <attribute id="device_id"/>
  1738. <attribute id="device_name"/>
  1739. <attribute id="org_id"/>
  1740. <attribute id="owner_name"/>
  1741. </attributes>
  1742. </reconciliation>
  1743. </properties>
  1744. <fields>
  1745. <field id="device_id" xsi:type="AttributeExternalKey">
  1746. <filter><![CDATA[SELECT Device WHERE org_id = :this->org_id]]></filter>
  1747. <dependencies>
  1748. <attribute id="org_id"/>
  1749. </dependencies>
  1750. <sql>device_id</sql>
  1751. <target_class>Device</target_class>
  1752. <is_null_allowed>false</is_null_allowed>
  1753. <on_target_delete>DEL_MANUAL</on_target_delete>
  1754. <jointype></jointype>
  1755. </field>
  1756. <field id="device_name" xsi:type="AttributeExternalField">
  1757. <extkey_attcode>device_id</extkey_attcode>
  1758. <target_attcode>name</target_attcode>
  1759. </field>
  1760. <field id="licence_id" xsi:type="AttributeExternalKey">
  1761. <filter><![CDATA[SELECT Licence WHERE org_id = :this->org_id]]></filter>
  1762. <dependencies>
  1763. <attribute id="org_id"/>
  1764. </dependencies>
  1765. <sql>licence_id</sql>
  1766. <target_class>Licence</target_class>
  1767. <is_null_allowed>true</is_null_allowed>
  1768. <on_target_delete>DEL_MANUAL</on_target_delete>
  1769. <jointype></jointype>
  1770. </field>
  1771. <field id="licence_name" xsi:type="AttributeExternalField">
  1772. <extkey_attcode>licence_id</extkey_attcode>
  1773. <target_attcode>name</target_attcode>
  1774. </field>
  1775. <field id="version" xsi:type="AttributeString">
  1776. <sql>version</sql>
  1777. <default_value></default_value>
  1778. <is_null_allowed>true</is_null_allowed>
  1779. </field>
  1780. <field id="description" xsi:type="AttributeText">
  1781. <sql>description</sql>
  1782. <default_value></default_value>
  1783. <is_null_allowed>true</is_null_allowed>
  1784. </field>
  1785. </fields>
  1786. <methods>
  1787. <method id="ComputeValues">
  1788. <static>false</static>
  1789. <access>public</access>
  1790. <type>Overload-DBObject</type>
  1791. <code> public function ComputeValues()
  1792. {
  1793. }</code>
  1794. </method>
  1795. <method id="GetRelationQueries">
  1796. <static>true</static>
  1797. <access>public</access>
  1798. <type>Overload-DBObject</type>
  1799. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  1800. {
  1801. switch ($sRelCode)
  1802. {
  1803. case "impacts":
  1804. $aRels = array(
  1805. // Actually this should be limited to the Software instances based on a DBServer Application type...
  1806. "db_instances" => array("sQuery"=>"SELECT DatabaseInstance AS db WHERE db.db_server_instance_id = :this->id", "bPropagate"=>true, "iDistance"=>5),
  1807. );
  1808. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  1809. break;
  1810. case 'depends on':
  1811. $aRels = array(
  1812. "applications" => array("sQuery"=>"SELECT Device JOIN SoftwareInstance AS app ON app.device_id = Device.id WHERE app.id = :this->id", "bPropagate"=>true, "iDistance"=>5),
  1813. );
  1814. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  1815. break;
  1816. default:
  1817. return parent::GetRelationQueries($sRelCode);
  1818. }
  1819. }]]></code>
  1820. </method>
  1821. </methods>
  1822. <presentation>
  1823. <details>
  1824. <items>
  1825. <item>name</item>
  1826. <item>status</item>
  1827. <item>org_id</item>
  1828. <item>importance</item>
  1829. <item>device_id</item>
  1830. <item>licence_id</item>
  1831. <item>version</item>
  1832. <item>description</item>
  1833. <item>contact_list</item>
  1834. <item>document_list</item>
  1835. <item>solution_list</item>
  1836. <item>contract_list</item>
  1837. <item>ticket_list</item>
  1838. </items>
  1839. </details>
  1840. <search>
  1841. <items>
  1842. <item>status</item>
  1843. <item>org_id</item>
  1844. <item>importance</item>
  1845. <item>device_id</item>
  1846. <item>licence_id</item>
  1847. <item>version</item>
  1848. </items>
  1849. </search>
  1850. <list>
  1851. <items>
  1852. <item>finalclass</item>
  1853. <item>status</item>
  1854. <item>org_id</item>
  1855. <item>importance</item>
  1856. <item>device_id</item>
  1857. <item>version</item>
  1858. </items>
  1859. </list>
  1860. </presentation>
  1861. </class>
  1862. <class id="DBServerInstance" _delta="define">
  1863. <parent>SoftwareInstance</parent>
  1864. <properties>
  1865. <category>bizmodel,searchable,configmgmt</category>
  1866. <abstract>false</abstract>
  1867. <key_type>autoincrement</key_type>
  1868. <db_table>softwareinstance_dbserver</db_table>
  1869. <db_key_field>id</db_key_field>
  1870. <db_final_class_field></db_final_class_field>
  1871. <naming>
  1872. <format>%1$s - %2$s</format>
  1873. <attributes>
  1874. <attribute id="name"/>
  1875. <attribute id="device_id_friendlyname"/>
  1876. </attributes>
  1877. </naming>
  1878. <display_template></display_template>
  1879. <icon>images/database.png</icon>
  1880. <reconciliation>
  1881. <attributes>
  1882. <attribute id="name"/>
  1883. <attribute id="software_id"/>
  1884. <attribute id="software_name"/>
  1885. <attribute id="device_id"/>
  1886. <attribute id="device_name"/>
  1887. <attribute id="org_id"/>
  1888. <attribute id="owner_name"/>
  1889. </attributes>
  1890. </reconciliation>
  1891. </properties>
  1892. <fields>
  1893. <field id="software_id" xsi:type="AttributeExternalKey">
  1894. <sql>software_id</sql>
  1895. <target_class>DBServer</target_class>
  1896. <is_null_allowed>false</is_null_allowed>
  1897. <on_target_delete>DEL_MANUAL</on_target_delete>
  1898. <jointype></jointype>
  1899. </field>
  1900. <field id="software_name" xsi:type="AttributeExternalField">
  1901. <extkey_attcode>software_id</extkey_attcode>
  1902. <target_attcode>name</target_attcode>
  1903. </field>
  1904. <field id="dbinstance_list" xsi:type="AttributeLinkedSet">
  1905. <linked_class>DatabaseInstance</linked_class>
  1906. <ext_key_to_me>db_server_instance_id</ext_key_to_me>
  1907. <count_min>0</count_min>
  1908. <count_max>0</count_max>
  1909. </field>
  1910. </fields>
  1911. <methods/>
  1912. <presentation>
  1913. <details>
  1914. <items>
  1915. <item>name</item>
  1916. <item>status</item>
  1917. <item>org_id</item>
  1918. <item>importance</item>
  1919. <item>device_id</item>
  1920. <item>licence_id</item>
  1921. <item>software_id</item>
  1922. <item>version</item>
  1923. <item>description</item>
  1924. <item>contact_list</item>
  1925. <item>document_list</item>
  1926. <item>solution_list</item>
  1927. <item>contract_list</item>
  1928. <item>ticket_list</item>
  1929. <item>dbinstance_list</item>
  1930. </items>
  1931. </details>
  1932. <search>
  1933. <items>
  1934. <item>status</item>
  1935. <item>org_id</item>
  1936. <item>importance</item>
  1937. <item>device_id</item>
  1938. <item>licence_id</item>
  1939. <item>software_id</item>
  1940. <item>version</item>
  1941. </items>
  1942. </search>
  1943. <list>
  1944. <items>
  1945. <item>status</item>
  1946. <item>org_id</item>
  1947. <item>importance</item>
  1948. <item>device_id</item>
  1949. <item>software_id</item>
  1950. <item>version</item>
  1951. </items>
  1952. </list>
  1953. </presentation>
  1954. </class>
  1955. <class id="ApplicationInstance" _delta="define">
  1956. <parent>SoftwareInstance</parent>
  1957. <properties>
  1958. <category>bizmodel,searchable,configmgmt</category>
  1959. <abstract>false</abstract>
  1960. <key_type>autoincrement</key_type>
  1961. <db_table>softwareinstance_application</db_table>
  1962. <db_key_field>id</db_key_field>
  1963. <db_final_class_field></db_final_class_field>
  1964. <naming>
  1965. <format>%1$s - %2$s</format>
  1966. <attributes>
  1967. <attribute id="name"/>
  1968. <attribute id="device_id_friendlyname"/>
  1969. </attributes>
  1970. </naming>
  1971. <display_template></display_template>
  1972. <icon>images/application.png</icon>
  1973. <reconciliation>
  1974. <attributes>
  1975. <attribute id="name"/>
  1976. <attribute id="software_id"/>
  1977. <attribute id="software_name"/>
  1978. <attribute id="device_id"/>
  1979. <attribute id="device_name"/>
  1980. <attribute id="org_id"/>
  1981. <attribute id="owner_name"/>
  1982. </attributes>
  1983. </reconciliation>
  1984. </properties>
  1985. <fields>
  1986. <field id="software_id" xsi:type="AttributeExternalKey">
  1987. <sql>software_id</sql>
  1988. <target_class>Application</target_class>
  1989. <is_null_allowed>false</is_null_allowed>
  1990. <on_target_delete>DEL_MANUAL</on_target_delete>
  1991. <jointype></jointype>
  1992. </field>
  1993. <field id="software_name" xsi:type="AttributeExternalField">
  1994. <extkey_attcode>software_id</extkey_attcode>
  1995. <target_attcode>name</target_attcode>
  1996. </field>
  1997. </fields>
  1998. <methods/>
  1999. <presentation>
  2000. <details>
  2001. <items>
  2002. <item>name</item>
  2003. <item>status</item>
  2004. <item>org_id</item>
  2005. <item>importance</item>
  2006. <item>device_id</item>
  2007. <item>licence_id</item>
  2008. <item>software_id</item>
  2009. <item>version</item>
  2010. <item>description</item>
  2011. <item>contact_list</item>
  2012. <item>document_list</item>
  2013. <item>solution_list</item>
  2014. <item>contract_list</item>
  2015. <item>ticket_list</item>
  2016. </items>
  2017. </details>
  2018. <search>
  2019. <items>
  2020. <item>status</item>
  2021. <item>org_id</item>
  2022. <item>importance</item>
  2023. <item>device_id</item>
  2024. <item>licence_id</item>
  2025. <item>software_id</item>
  2026. <item>version</item>
  2027. </items>
  2028. </search>
  2029. <list>
  2030. <items>
  2031. <item>status</item>
  2032. <item>org_id</item>
  2033. <item>importance</item>
  2034. <item>device_id</item>
  2035. <item>software_id</item>
  2036. <item>version</item>
  2037. </items>
  2038. </list>
  2039. </presentation>
  2040. </class>
  2041. <class id="DatabaseInstance" _delta="define">
  2042. <parent>FunctionalCI</parent>
  2043. <properties>
  2044. <category>bizmodel,searchable,configmgmt</category>
  2045. <abstract>false</abstract>
  2046. <key_type>autoincrement</key_type>
  2047. <db_table>databaseinstance</db_table>
  2048. <db_key_field>id</db_key_field>
  2049. <db_final_class_field></db_final_class_field>
  2050. <naming>
  2051. <format>%1$s - %2$s</format>
  2052. <attributes>
  2053. <attribute id="name"/>
  2054. <attribute id="db_server_instance_id_friendlyname"/>
  2055. </attributes>
  2056. </naming>
  2057. <display_template></display_template>
  2058. <icon>images/database-instance.png</icon>
  2059. <reconciliation>
  2060. <attributes>
  2061. <attribute id="name"/>
  2062. <attribute id="org_id"/>
  2063. <attribute id="owner_name"/>
  2064. <attribute id="db_server_instance_id"/>
  2065. <attribute id="db_server_instance_name"/>
  2066. </attributes>
  2067. </reconciliation>
  2068. </properties>
  2069. <fields>
  2070. <field id="db_server_instance_id" xsi:type="AttributeExternalKey">
  2071. <filter><![CDATA[SELECT DBServerInstance WHERE org_id = :this->org_id]]></filter>
  2072. <dependencies>
  2073. <attribute id="org_id"/>
  2074. </dependencies>
  2075. <sql>db_server_instance_id</sql>
  2076. <target_class>DBServerInstance</target_class>
  2077. <is_null_allowed>false</is_null_allowed>
  2078. <on_target_delete>DEL_MANUAL</on_target_delete>
  2079. <jointype></jointype>
  2080. </field>
  2081. <field id="db_server_instance_name" xsi:type="AttributeExternalField">
  2082. <extkey_attcode>db_server_instance_id</extkey_attcode>
  2083. <target_attcode>name</target_attcode>
  2084. </field>
  2085. <field id="db_server_instance_version" xsi:type="AttributeExternalField">
  2086. <extkey_attcode>db_server_instance_id</extkey_attcode>
  2087. <target_attcode>version</target_attcode>
  2088. </field>
  2089. <field id="description" xsi:type="AttributeText">
  2090. <sql>description</sql>
  2091. <default_value></default_value>
  2092. <is_null_allowed>true</is_null_allowed>
  2093. </field>
  2094. </fields>
  2095. <methods>
  2096. <method id="GetRelationQueries">
  2097. <static>true</static>
  2098. <access>public</access>
  2099. <type>Overload-DBObject</type>
  2100. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  2101. {
  2102. switch ($sRelCode)
  2103. {
  2104. case "depends on":
  2105. $aRels = array(
  2106. "db_instances" => array("sQuery"=>"SELECT DBServerInstance AS db_server_inst JOIN DatabaseInstance AS db ON db.db_server_instance_id = db_server_inst.id WHERE db.id = :this->id", "bPropagate"=>true, "iDistance"=>5),
  2107. );
  2108. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2109. break;
  2110. default:
  2111. return parent::GetRelationQueries($sRelCode);
  2112. }
  2113. }]]></code>
  2114. </method>
  2115. </methods>
  2116. <presentation>
  2117. <details>
  2118. <items>
  2119. <item>name</item>
  2120. <item>status</item>
  2121. <item>org_id</item>
  2122. <item>importance</item>
  2123. <item>db_server_instance_id</item>
  2124. <item>db_server_instance_version</item>
  2125. <item>description</item>
  2126. <item>contact_list</item>
  2127. <item>document_list</item>
  2128. <item>solution_list</item>
  2129. <item>contract_list</item>
  2130. <item>ticket_list</item>
  2131. </items>
  2132. </details>
  2133. <search>
  2134. <items>
  2135. <item>name</item>
  2136. <item>status</item>
  2137. <item>org_id</item>
  2138. <item>importance</item>
  2139. <item>db_server_instance_id</item>
  2140. <item>db_server_instance_version</item>
  2141. </items>
  2142. </search>
  2143. <list>
  2144. <items>
  2145. <item>status</item>
  2146. <item>org_id</item>
  2147. <item>importance</item>
  2148. <item>db_server_instance_id</item>
  2149. <item>db_server_instance_version</item>
  2150. </items>
  2151. </list>
  2152. </presentation>
  2153. </class>
  2154. <class id="ApplicationSolution" _delta="define">
  2155. <parent>FunctionalCI</parent>
  2156. <properties>
  2157. <category>bizmodel,searchable,configmgmt</category>
  2158. <abstract>false</abstract>
  2159. <key_type>autoincrement</key_type>
  2160. <db_table>applicationsolution</db_table>
  2161. <db_key_field>id</db_key_field>
  2162. <db_final_class_field></db_final_class_field>
  2163. <naming>
  2164. <format>%1$s</format>
  2165. <attributes>
  2166. <attribute id="name"/>
  2167. </attributes>
  2168. </naming>
  2169. <display_template></display_template>
  2170. <icon>images/solution.png</icon>
  2171. <reconciliation>
  2172. <attributes>
  2173. <attribute id="name"/>
  2174. <attribute id="org_id"/>
  2175. <attribute id="owner_name"/>
  2176. </attributes>
  2177. </reconciliation>
  2178. </properties>
  2179. <fields>
  2180. <field id="description" xsi:type="AttributeText">
  2181. <sql>description</sql>
  2182. <default_value></default_value>
  2183. <is_null_allowed>true</is_null_allowed>
  2184. </field>
  2185. <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
  2186. <linked_class>lnkSolutionToCI</linked_class>
  2187. <ext_key_to_me>solution_id</ext_key_to_me>
  2188. <count_min>0</count_min>
  2189. <count_max>0</count_max>
  2190. <ext_key_to_remote>ci_id</ext_key_to_remote>
  2191. </field>
  2192. <field id="process_list" xsi:type="AttributeLinkedSetIndirect">
  2193. <linked_class>lnkProcessToSolution</linked_class>
  2194. <ext_key_to_me>solution_id</ext_key_to_me>
  2195. <count_min>0</count_min>
  2196. <count_max>0</count_max>
  2197. <ext_key_to_remote>process_id</ext_key_to_remote>
  2198. </field>
  2199. </fields>
  2200. <methods>
  2201. <method id="GetRelationQueries">
  2202. <static>true</static>
  2203. <access>public</access>
  2204. <type>Overload-DBObject</type>
  2205. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  2206. {
  2207. switch ($sRelCode)
  2208. {
  2209. case "impacts":
  2210. $aRels = array(
  2211. "process" => array("sQuery"=>"SELECT BusinessProcess AS p JOIN lnkProcessToSolution AS l1 ON l1.process_id = p.id WHERE l1.solution_id = :this->id", "bPropagate"=>true, "iDistance"=>3),
  2212. );
  2213. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2214. break;
  2215. case "depends on":
  2216. $aRels = array(
  2217. "solution" => array("sQuery"=>"SELECT FunctionalCI AS ci JOIN lnkSolutionToCI AS l1 ON l1.ci_id = ci.id WHERE l1.solution_id = :this->id", "bPropagate"=>true, "iDistance"=>2),
  2218. );
  2219. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2220. break;
  2221. default:
  2222. return parent::GetRelationQueries($sRelCode);
  2223. }
  2224. }]]></code>
  2225. </method>
  2226. </methods>
  2227. <presentation>
  2228. <details>
  2229. <items>
  2230. <item>name</item>
  2231. <item>status</item>
  2232. <item>org_id</item>
  2233. <item>importance</item>
  2234. <item>description</item>
  2235. <item>contact_list</item>
  2236. <item>document_list</item>
  2237. <item>solution_list</item>
  2238. <item>contract_list</item>
  2239. <item>ticket_list</item>
  2240. <item>ci_list</item>
  2241. <item>process_list</item>
  2242. </items>
  2243. </details>
  2244. <search>
  2245. <items>
  2246. <item>name</item>
  2247. <item>status</item>
  2248. <item>org_id</item>
  2249. <item>importance</item>
  2250. </items>
  2251. </search>
  2252. <list>
  2253. <items>
  2254. <item>status</item>
  2255. <item>org_id</item>
  2256. <item>importance</item>
  2257. </items>
  2258. </list>
  2259. </presentation>
  2260. </class>
  2261. <class id="BusinessProcess" _delta="define">
  2262. <parent>FunctionalCI</parent>
  2263. <properties>
  2264. <category>bizmodel,searchable,configmgmt</category>
  2265. <abstract>false</abstract>
  2266. <key_type>autoincrement</key_type>
  2267. <db_table>businessprocess</db_table>
  2268. <db_key_field>id</db_key_field>
  2269. <db_final_class_field></db_final_class_field>
  2270. <naming>
  2271. <format>%1$s</format>
  2272. <attributes>
  2273. <attribute id="name"/>
  2274. </attributes>
  2275. </naming>
  2276. <display_template></display_template>
  2277. <icon>images/business-process.png</icon>
  2278. <reconciliation>
  2279. <attributes>
  2280. <attribute id="name"/>
  2281. <attribute id="org_id"/>
  2282. <attribute id="owner_name"/>
  2283. </attributes>
  2284. </reconciliation>
  2285. </properties>
  2286. <fields>
  2287. <field id="description" xsi:type="AttributeText">
  2288. <sql>description</sql>
  2289. <default_value></default_value>
  2290. <is_null_allowed>true</is_null_allowed>
  2291. </field>
  2292. <field id="used_solution_list" xsi:type="AttributeLinkedSetIndirect">
  2293. <linked_class>lnkProcessToSolution</linked_class>
  2294. <ext_key_to_me>process_id</ext_key_to_me>
  2295. <count_min>0</count_min>
  2296. <count_max>0</count_max>
  2297. <ext_key_to_remote>solution_id</ext_key_to_remote>
  2298. </field>
  2299. </fields>
  2300. <methods>
  2301. <method id="GetRelationQueries">
  2302. <static>true</static>
  2303. <access>public</access>
  2304. <type>Overload-DBObject</type>
  2305. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  2306. {
  2307. switch ($sRelCode)
  2308. {
  2309. case "depends on":
  2310. $aRels = array(
  2311. "solution" => array("sQuery"=>"SELECT ApplicationSolution AS app JOIN lnkProcessToSolution AS l1 ON l1.solution_id = app.id WHERE l1.process_id = :this->id", "bPropagate"=>true, "iDistance"=>3),
  2312. );
  2313. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2314. break;
  2315. default:
  2316. return parent::GetRelationQueries($sRelCode);
  2317. }
  2318. }]]></code>
  2319. </method>
  2320. </methods>
  2321. <presentation>
  2322. <details>
  2323. <items>
  2324. <item>name</item>
  2325. <item>status</item>
  2326. <item>org_id</item>
  2327. <item>importance</item>
  2328. <item>description</item>
  2329. <item>contact_list</item>
  2330. <item>document_list</item>
  2331. <item>contract_list</item>
  2332. <item>ticket_list</item>
  2333. <item>used_solution_list</item>
  2334. </items>
  2335. </details>
  2336. <search>
  2337. <items>
  2338. <item>name</item>
  2339. <item>status</item>
  2340. <item>org_id</item>
  2341. <item>importance</item>
  2342. <item>description</item>
  2343. </items>
  2344. </search>
  2345. <list>
  2346. <items>
  2347. <item>status</item>
  2348. <item>org_id</item>
  2349. <item>importance</item>
  2350. </items>
  2351. </list>
  2352. </presentation>
  2353. </class>
  2354. <class id="ConnectableCI" _delta="define">
  2355. <parent>FunctionalCI</parent>
  2356. <properties>
  2357. <category>bizmodel,searchable,configmgmt</category>
  2358. <abstract>true</abstract>
  2359. <key_type>autoincrement</key_type>
  2360. <db_table>connectableci</db_table>
  2361. <db_key_field>id</db_key_field>
  2362. <db_final_class_field></db_final_class_field>
  2363. <naming>
  2364. <format>%1$s</format>
  2365. <attributes>
  2366. <attribute id="name"/>
  2367. </attributes>
  2368. </naming>
  2369. <display_template></display_template>
  2370. <icon>images/server.png</icon>
  2371. <reconciliation>
  2372. <attributes>
  2373. <attribute id="name"/>
  2374. <attribute id="org_id"/>
  2375. <attribute id="owner_name"/>
  2376. </attributes>
  2377. </reconciliation>
  2378. </properties>
  2379. <fields>
  2380. <field id="brand" xsi:type="AttributeString">
  2381. <sql>brand</sql>
  2382. <default_value></default_value>
  2383. <is_null_allowed>true</is_null_allowed>
  2384. </field>
  2385. <field id="model" xsi:type="AttributeString">
  2386. <sql>model</sql>
  2387. <default_value></default_value>
  2388. <is_null_allowed>true</is_null_allowed>
  2389. </field>
  2390. <field id="serial_number" xsi:type="AttributeString">
  2391. <sql>serial_number</sql>
  2392. <default_value></default_value>
  2393. <is_null_allowed>true</is_null_allowed>
  2394. </field>
  2395. <field id="asset_ref" xsi:type="AttributeString">
  2396. <sql>asset_ref</sql>
  2397. <default_value></default_value>
  2398. <is_null_allowed>true</is_null_allowed>
  2399. </field>
  2400. </fields>
  2401. <methods/>
  2402. <presentation>
  2403. <details>
  2404. <items>
  2405. <item>name</item>
  2406. <item>status</item>
  2407. <item>org_id</item>
  2408. <item>importance</item>
  2409. <item>brand</item>
  2410. <item>model</item>
  2411. <item>serial_number</item>
  2412. <item>asset_ref</item>
  2413. <item>contact_list</item>
  2414. <item>document_list</item>
  2415. <item>solution_list</item>
  2416. <item>contract_list</item>
  2417. <item>ticket_list</item>
  2418. </items>
  2419. </details>
  2420. <search>
  2421. <items>
  2422. <item>name</item>
  2423. <item>status</item>
  2424. <item>org_id</item>
  2425. <item>importance</item>
  2426. <item>brand</item>
  2427. <item>model</item>
  2428. <item>serial_number</item>
  2429. <item>asset_ref</item>
  2430. </items>
  2431. </search>
  2432. <list>
  2433. <items>
  2434. <item>finalclass</item>
  2435. <item>status</item>
  2436. <item>org_id</item>
  2437. <item>importance</item>
  2438. <item>brand</item>
  2439. <item>model</item>
  2440. <item>serial_number</item>
  2441. <item>asset_ref</item>
  2442. </items>
  2443. </list>
  2444. </presentation>
  2445. </class>
  2446. <class id="NetworkInterface" _delta="define">
  2447. <parent>ConnectableCI</parent>
  2448. <properties>
  2449. <category>bizmodel,searchable,configmgmt</category>
  2450. <abstract>false</abstract>
  2451. <key_type>autoincrement</key_type>
  2452. <db_table>networkinterface</db_table>
  2453. <db_key_field>id</db_key_field>
  2454. <db_final_class_field></db_final_class_field>
  2455. <naming>
  2456. <format>%1$s - %2$s</format>
  2457. <attributes>
  2458. <attribute id="device_id_friendlyname"/>
  2459. <attribute id="name"/>
  2460. </attributes>
  2461. </naming>
  2462. <display_template></display_template>
  2463. <icon>images/interface.png</icon>
  2464. <reconciliation>
  2465. <attributes>
  2466. <attribute id="name"/>
  2467. <attribute id="device_id"/>
  2468. <attribute id="device_name"/>
  2469. <attribute id="org_id"/>
  2470. </attributes>
  2471. </reconciliation>
  2472. </properties>
  2473. <fields>
  2474. <field id="device_id" xsi:type="AttributeExternalKey">
  2475. <filter><![CDATA[SELECT Device WHERE org_id = :this->org_id]]></filter>
  2476. <dependencies>
  2477. <attribute id="org_id"/>
  2478. </dependencies>
  2479. <sql>device_id</sql>
  2480. <target_class>Device</target_class>
  2481. <is_null_allowed>false</is_null_allowed>
  2482. <on_target_delete>DEL_AUTO</on_target_delete>
  2483. <jointype></jointype>
  2484. </field>
  2485. <field id="device_name" xsi:type="AttributeExternalField">
  2486. <extkey_attcode>device_id</extkey_attcode>
  2487. <target_attcode>name</target_attcode>
  2488. </field>
  2489. <field id="logical_type" xsi:type="AttributeEnum">
  2490. <values>
  2491. <value>backup</value>
  2492. <value>logical</value>
  2493. <value>port</value>
  2494. <value>primary</value>
  2495. <value>secondary</value>
  2496. </values>
  2497. <sql>logical_type</sql>
  2498. <default_value>primary</default_value>
  2499. <is_null_allowed>false</is_null_allowed>
  2500. </field>
  2501. <field id="physical_type" xsi:type="AttributeEnum">
  2502. <values>
  2503. <value>atm</value>
  2504. <value>ethernet</value>
  2505. <value>framerelay</value>
  2506. <value>vlan</value>
  2507. </values>
  2508. <sql>physical_type</sql>
  2509. <default_value>ethernet</default_value>
  2510. <is_null_allowed>false</is_null_allowed>
  2511. </field>
  2512. <field id="ip_address" xsi:type="AttributeIPAddress">
  2513. <sql>ip_address</sql>
  2514. <default_value></default_value>
  2515. <is_null_allowed>true</is_null_allowed>
  2516. </field>
  2517. <field id="ip_mask" xsi:type="AttributeIPAddress">
  2518. <sql>ip_mask</sql>
  2519. <default_value></default_value>
  2520. <is_null_allowed>true</is_null_allowed>
  2521. </field>
  2522. <field id="mac_address" xsi:type="AttributeString">
  2523. <sql>mac_address</sql>
  2524. <default_value></default_value>
  2525. <is_null_allowed>true</is_null_allowed>
  2526. </field>
  2527. <field id="speed" xsi:type="AttributeInteger">
  2528. <sql>speed</sql>
  2529. <default_value></default_value>
  2530. <is_null_allowed>true</is_null_allowed>
  2531. </field>
  2532. <field id="duplex" xsi:type="AttributeEnum">
  2533. <values>
  2534. <value>full</value>
  2535. <value>half</value>
  2536. <value>auto</value>
  2537. <value>unknown</value>
  2538. </values>
  2539. <sql>duplex</sql>
  2540. <default_value>full</default_value>
  2541. <is_null_allowed>true</is_null_allowed>
  2542. </field>
  2543. <field id="connected_if" xsi:type="AttributeExternalKey">
  2544. <filter><![CDATA[SELECT NetworkInterface WHERE org_id = :this->org_id]]></filter>
  2545. <dependencies>
  2546. <attribute id="org_id"/>
  2547. </dependencies>
  2548. <sql>connected_if</sql>
  2549. <target_class>NetworkInterface</target_class>
  2550. <is_null_allowed>true</is_null_allowed>
  2551. <on_target_delete>DEL_AUTO</on_target_delete>
  2552. <jointype></jointype>
  2553. </field>
  2554. <field id="connected_name" xsi:type="AttributeExternalField">
  2555. <extkey_attcode>connected_if</extkey_attcode>
  2556. <target_attcode>name</target_attcode>
  2557. </field>
  2558. <field id="connected_if_device_id" xsi:type="AttributeExternalField">
  2559. <extkey_attcode>connected_if</extkey_attcode>
  2560. <target_attcode>device_id</target_attcode>
  2561. </field>
  2562. <field id="connected_if_device_id_name" xsi:type="AttributeExternalField">
  2563. <extkey_attcode>connected_if</extkey_attcode>
  2564. <target_attcode>device_name</target_attcode>
  2565. </field>
  2566. <field id="link_type" xsi:type="AttributeEnum">
  2567. <values>
  2568. <value>uplink</value>
  2569. <value>downlink</value>
  2570. </values>
  2571. <sql>link_type</sql>
  2572. <default_value>uplink</default_value>
  2573. <is_null_allowed>false</is_null_allowed>
  2574. </field>
  2575. <field id="connected_if_device_id_friendlyname" xsi:type="AttributeExternalField">
  2576. <extkey_attcode>connected_if</extkey_attcode>
  2577. <target_attcode>device_id_friendlyname</target_attcode>
  2578. </field>
  2579. </fields>
  2580. <methods>
  2581. <method id="GetRelationQueries">
  2582. <static>true</static>
  2583. <access>public</access>
  2584. <type>Overload-DBObject</type>
  2585. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  2586. {
  2587. switch ($sRelCode)
  2588. {
  2589. case "impacts":
  2590. $aRels = array(
  2591. "connected_devices" => array("sQuery"=>"SELECT Device AS dev JOIN NetworkInterface AS if1 ON if1.device_id = dev.id JOIN NetworkInterface AS if2 ON if2.connected_if = if1.id WHERE if2.id = :this->id AND if2.link_type='downlink'", "bPropagate"=>true, "iDistance"=>5),
  2592. );
  2593. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2594. break;
  2595. default:
  2596. return parent::GetRelationQueries($sRelCode);
  2597. }
  2598. }]]></code>
  2599. </method>
  2600. <method id="UpdateConnectedInterface">
  2601. <static>false</static>
  2602. <access>protected</access>
  2603. <type>Overload-DBObject</type>
  2604. <code><![CDATA[ protected function UpdateConnectedInterface()
  2605. {
  2606. $iPrevTargetIf = $this->m_aOrigValues['connected_if']; // The interface this interface was connected to
  2607. if ($iPrevTargetIf != 0)
  2608. {
  2609. // The interface was previosuly connected to another interface. Make sure that we reset this 'previously connected interface'
  2610. $oPrevConnectedIf = MetaModel::GetObject('NetworkInterface', $iPrevTargetIf, false);
  2611. if (!is_null($oPrevConnectedIf))
  2612. {
  2613. $oPrevConnectedIf->Set('connected_if', 0);
  2614. // Need to backup the current change, because it is reset when DBUpdateTracked is complete
  2615. $oCurrChange = self::$m_oCurrChange;
  2616. $oPrevConnectedIf->DBUpdateTracked($oCurrChange);
  2617. self::$m_oCurrChange = $oCurrChange;
  2618. }
  2619. }
  2620. $oConnIf = MetaModel::GetObject('NetworkInterface', $this->Get('connected_if'), false /* no exception if not found */);
  2621. if (!is_null($oConnIf))
  2622. {
  2623. $sLink = $this->Get('link_type');
  2624. $sConnLink = ($sLink == 'uplink') ? 'downlink' : 'uplink';
  2625. if (($oConnIf->Get('connected_if') != $this->GetKey()) || ($sConnLink != $oConnIf->Get('link_type')))
  2626. {
  2627. // Something has to be changed on the connected interface...
  2628. if ($oConnIf->Get('connected_if') != $this->GetKey())
  2629. {
  2630. // It is connected to another interface: reset that third one...
  2631. $oThirdIf = MetaModel::GetObject('NetworkInterface', $oConnIf->Get('connected_if'), false);
  2632. if (!is_null($oThirdIf))
  2633. {
  2634. $oThirdIf->Set('connected_if', 0);
  2635. // Need to backup the current change, because it is reset when DBUpdateTracked is complete
  2636. $oCurrChange = self::$m_oCurrChange;
  2637. $oThirdIf->DBUpdateTracked($oCurrChange);
  2638. self::$m_oCurrChange = $oCurrChange;
  2639. }
  2640. }
  2641. // Connect the remote interface to the current one
  2642. $oConnIf->Set('connected_if', $this->GetKey());
  2643. $oConnIf->Set('link_type', $sConnLink);
  2644. // Need to backup the current change, because it is reset when DBUpdateTracked is complete
  2645. $oCurrChange = self::$m_oCurrChange;
  2646. $oConnIf->DBUpdateTracked($oCurrChange);
  2647. self::$m_oCurrChange = $oCurrChange;
  2648. }
  2649. }
  2650. }]]></code>
  2651. </method>
  2652. <method id="AfterInsert">
  2653. <static>false</static>
  2654. <access>protected</access>
  2655. <type>Overload-DBObject</type>
  2656. <code><![CDATA[ protected function AfterInsert()
  2657. {
  2658. $this->UpdateConnectedInterface();
  2659. parent::AfterInsert();
  2660. }]]></code>
  2661. </method>
  2662. <method id="AfterUpdate">
  2663. <static>false</static>
  2664. <access>protected</access>
  2665. <type>Overload-DBObject</type>
  2666. <code><![CDATA[ protected function AfterUpdate()
  2667. {
  2668. $this->UpdateConnectedInterface();
  2669. parent::AfterUpdate();
  2670. }]]></code>
  2671. </method>
  2672. </methods>
  2673. <presentation>
  2674. <details>
  2675. <items>
  2676. <item>name</item>
  2677. <item>status</item>
  2678. <item>org_id</item>
  2679. <item>importance</item>
  2680. <item>brand</item>
  2681. <item>model</item>
  2682. <item>serial_number</item>
  2683. <item>asset_ref</item>
  2684. <item>device_id</item>
  2685. <item>logical_type</item>
  2686. <item>physical_type</item>
  2687. <item>ip_address</item>
  2688. <item>ip_mask</item>
  2689. <item>mac_address</item>
  2690. <item>speed</item>
  2691. <item>duplex</item>
  2692. <item>link_type</item>
  2693. <item>connected_if</item>
  2694. <item>connected_if_device_id</item>
  2695. <item>contact_list</item>
  2696. <item>document_list</item>
  2697. <item>solution_list</item>
  2698. <item>contract_list</item>
  2699. <item>ticket_list</item>
  2700. </items>
  2701. </details>
  2702. <search>
  2703. <items>
  2704. <item>name</item>
  2705. <item>status</item>
  2706. <item>org_id</item>
  2707. <item>importance</item>
  2708. <item>device_id</item>
  2709. <item>logical_type</item>
  2710. <item>physical_type</item>
  2711. <item>ip_address</item>
  2712. <item>ip_mask</item>
  2713. <item>mac_address</item>
  2714. <item>connected_if_device_id</item>
  2715. </items>
  2716. </search>
  2717. <list>
  2718. <items>
  2719. <item>status</item>
  2720. <item>ip_address</item>
  2721. <item>importance</item>
  2722. <item>device_id</item>
  2723. <item>logical_type</item>
  2724. <item>physical_type</item>
  2725. <item>link_type</item>
  2726. <item>connected_if_device_id</item>
  2727. </items>
  2728. </list>
  2729. </presentation>
  2730. </class>
  2731. <class id="Device" _delta="define">
  2732. <parent>ConnectableCI</parent>
  2733. <properties>
  2734. <category>bizmodel,searchable,configmgmt</category>
  2735. <abstract>true</abstract>
  2736. <key_type>autoincrement</key_type>
  2737. <db_table>device</db_table>
  2738. <db_key_field>id</db_key_field>
  2739. <db_final_class_field></db_final_class_field>
  2740. <naming>
  2741. <format>%1$s</format>
  2742. <attributes>
  2743. <attribute id="name"/>
  2744. </attributes>
  2745. </naming>
  2746. <display_template></display_template>
  2747. <icon>images/server.png</icon>
  2748. <reconciliation>
  2749. <attributes>
  2750. <attribute id="name"/>
  2751. <attribute id="org_id"/>
  2752. <attribute id="owner_name"/>
  2753. </attributes>
  2754. </reconciliation>
  2755. </properties>
  2756. <fields>
  2757. <field id="nwinterface_list" xsi:type="AttributeLinkedSet">
  2758. <linked_class>NetworkInterface</linked_class>
  2759. <ext_key_to_me>device_id</ext_key_to_me>
  2760. <count_min>0</count_min>
  2761. <count_max>0</count_max>
  2762. </field>
  2763. </fields>
  2764. <methods>
  2765. <method id="GetRelationQueries">
  2766. <static>true</static>
  2767. <access>public</access>
  2768. <type>Overload-DBObject</type>
  2769. <code><![CDATA[ public static function GetRelationQueries($sRelCode)
  2770. {
  2771. switch ($sRelCode)
  2772. {
  2773. case "impacts":
  2774. $aRels = array(
  2775. "applications" => array("sQuery"=>"SELECT SoftwareInstance AS app WHERE app.device_id = :this->id", "bPropagate"=>true, "iDistance"=>5),
  2776. "connected_devices" => array("sQuery"=>"SELECT Device AS dev JOIN NetworkInterface AS if1 ON if1.device_id = dev.id JOIN NetworkInterface AS if2 ON if2.connected_if = if1.id WHERE if2.device_id = :this->id AND if2.link_type='downlink'", "bPropagate"=>true, "iDistance"=>5),
  2777. );
  2778. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2779. break;
  2780. case "depends on":
  2781. $aRels = array(
  2782. "connected_devices" => array("sQuery"=>"SELECT Device AS dev JOIN NetworkInterface AS if1 ON if1.device_id = dev.id JOIN NetworkInterface AS if2 ON if2.connected_if = if1.id WHERE if2.device_id = :this->id AND if2.link_type='uplink'", "bPropagate"=>true, "iDistance"=>5),
  2783. );
  2784. return array_merge($aRels, parent::GetRelationQueries($sRelCode));
  2785. break;
  2786. default:
  2787. return parent::GetRelationQueries($sRelCode);
  2788. }
  2789. }]]></code>
  2790. </method>
  2791. </methods>
  2792. <presentation>
  2793. <details>
  2794. <items>
  2795. <item>name</item>
  2796. <item>status</item>
  2797. <item>org_id</item>
  2798. <item>importance</item>
  2799. <item>brand</item>
  2800. <item>model</item>
  2801. <item>serial_number</item>
  2802. <item>asset_ref</item>
  2803. <item>contact_list</item>
  2804. <item>document_list</item>
  2805. <item>solution_list</item>
  2806. <item>contract_list</item>
  2807. <item>ticket_list</item>
  2808. <item>nwinterface_list</item>
  2809. </items>
  2810. </details>
  2811. <search>
  2812. <items>
  2813. <item>name</item>
  2814. <item>status</item>
  2815. <item>org_id</item>
  2816. <item>importance</item>
  2817. <item>brand</item>
  2818. <item>model</item>
  2819. <item>serial_number</item>
  2820. <item>asset_ref</item>
  2821. </items>
  2822. </search>
  2823. <list>
  2824. <items>
  2825. <item>finalclass</item>
  2826. <item>status</item>
  2827. <item>org_id</item>
  2828. <item>importance</item>
  2829. <item>brand</item>
  2830. <item>model</item>
  2831. <item>serial_number</item>
  2832. <item>asset_ref</item>
  2833. </items>
  2834. </list>
  2835. </presentation>
  2836. </class>
  2837. <class id="PC" _delta="define">
  2838. <parent>Device</parent>
  2839. <properties>
  2840. <category>bizmodel,searchable,configmgmt</category>
  2841. <abstract>false</abstract>
  2842. <key_type>autoincrement</key_type>
  2843. <db_table>pc</db_table>
  2844. <db_key_field>id</db_key_field>
  2845. <db_final_class_field></db_final_class_field>
  2846. <naming>
  2847. <format>%1$s</format>
  2848. <attributes>
  2849. <attribute id="name"/>
  2850. </attributes>
  2851. </naming>
  2852. <display_template></display_template>
  2853. <icon>images/laptop.png</icon>
  2854. <reconciliation>
  2855. <attributes>
  2856. <attribute id="name"/>
  2857. <attribute id="org_id"/>
  2858. <attribute id="owner_name"/>
  2859. </attributes>
  2860. </reconciliation>
  2861. </properties>
  2862. <fields>
  2863. <field id="cpu" xsi:type="AttributeString">
  2864. <sql>cpu</sql>
  2865. <default_value></default_value>
  2866. <is_null_allowed>true</is_null_allowed>
  2867. </field>
  2868. <field id="ram" xsi:type="AttributeString">
  2869. <sql>ram</sql>
  2870. <default_value></default_value>
  2871. <is_null_allowed>true</is_null_allowed>
  2872. </field>
  2873. <field id="hdd" xsi:type="AttributeString">
  2874. <sql>hdd</sql>
  2875. <default_value></default_value>
  2876. <is_null_allowed>true</is_null_allowed>
  2877. </field>
  2878. <field id="os_family" xsi:type="AttributeString">
  2879. <sql>os_family</sql>
  2880. <default_value></default_value>
  2881. <is_null_allowed>true</is_null_allowed>
  2882. </field>
  2883. <field id="os_version" xsi:type="AttributeString">
  2884. <sql>os_version</sql>
  2885. <default_value></default_value>
  2886. <is_null_allowed>true</is_null_allowed>
  2887. </field>
  2888. <field id="application_list" xsi:type="AttributeLinkedSet">
  2889. <linked_class>SoftwareInstance</linked_class>
  2890. <ext_key_to_me>device_id</ext_key_to_me>
  2891. <count_min>0</count_min>
  2892. <count_max>0</count_max>
  2893. </field>
  2894. <field id="patch_list" xsi:type="AttributeLinkedSetIndirect">
  2895. <linked_class>lnkPatchToCI</linked_class>
  2896. <ext_key_to_me>ci_id</ext_key_to_me>
  2897. <count_min>0</count_min>
  2898. <count_max>0</count_max>
  2899. <ext_key_to_remote>patch_id</ext_key_to_remote>
  2900. </field>
  2901. </fields>
  2902. <methods/>
  2903. <presentation>
  2904. <details>
  2905. <items>
  2906. <item>name</item>
  2907. <item>status</item>
  2908. <item>org_id</item>
  2909. <item>importance</item>
  2910. <item>brand</item>
  2911. <item>model</item>
  2912. <item>serial_number</item>
  2913. <item>asset_ref</item>
  2914. <item>cpu</item>
  2915. <item>ram</item>
  2916. <item>hdd</item>
  2917. <item>os_family</item>
  2918. <item>os_version</item>
  2919. <item>contact_list</item>
  2920. <item>document_list</item>
  2921. <item>solution_list</item>
  2922. <item>contract_list</item>
  2923. <item>ticket_list</item>
  2924. <item>nwinterface_list</item>
  2925. <item>application_list</item>
  2926. <item>patch_list</item>
  2927. </items>
  2928. </details>
  2929. <search>
  2930. <items>
  2931. <item>name</item>
  2932. <item>status</item>
  2933. <item>org_id</item>
  2934. <item>importance</item>
  2935. <item>brand</item>
  2936. <item>model</item>
  2937. <item>serial_number</item>
  2938. <item>asset_ref</item>
  2939. <item>os_family</item>
  2940. <item>os_version</item>
  2941. </items>
  2942. </search>
  2943. <list>
  2944. <items>
  2945. <item>status</item>
  2946. <item>org_id</item>
  2947. <item>importance</item>
  2948. <item>brand</item>
  2949. <item>model</item>
  2950. <item>os_family</item>
  2951. </items>
  2952. </list>
  2953. </presentation>
  2954. </class>
  2955. <class id="MobileCI" _delta="define">
  2956. <parent>Device</parent>
  2957. <properties>
  2958. <category>bizmodel,searchable,configmgmt</category>
  2959. <abstract>true</abstract>
  2960. <key_type>autoincrement</key_type>
  2961. <db_table>mobileci</db_table>
  2962. <db_key_field>id</db_key_field>
  2963. <db_final_class_field></db_final_class_field>
  2964. <naming>
  2965. <format>%1$s</format>
  2966. <attributes>
  2967. <attribute id="name"/>
  2968. </attributes>
  2969. </naming>
  2970. <display_template></display_template>
  2971. <icon>images/mobile-phone.png</icon>
  2972. <reconciliation>
  2973. <attributes>
  2974. <attribute id="name"/>
  2975. <attribute id="org_id"/>
  2976. <attribute id="owner_name"/>
  2977. </attributes>
  2978. </reconciliation>
  2979. </properties>
  2980. <fields/>
  2981. <methods/>
  2982. <presentation>
  2983. <details>
  2984. <items>
  2985. <item>name</item>
  2986. <item>status</item>
  2987. <item>org_id</item>
  2988. <item>importance</item>
  2989. <item>brand</item>
  2990. <item>model</item>
  2991. <item>serial_number</item>
  2992. <item>asset_ref</item>
  2993. <item>contact_list</item>
  2994. <item>document_list</item>
  2995. <item>solution_list</item>
  2996. <item>contract_list</item>
  2997. <item>ticket_list</item>
  2998. <item>nwinterface_list</item>
  2999. </items>
  3000. </details>
  3001. <search>
  3002. <items>
  3003. <item>name</item>
  3004. <item>status</item>
  3005. <item>org_id</item>
  3006. <item>importance</item>
  3007. <item>brand</item>
  3008. <item>model</item>
  3009. <item>serial_number</item>
  3010. <item>asset_ref</item>
  3011. </items>
  3012. </search>
  3013. <list>
  3014. <items>
  3015. <item>status</item>
  3016. <item>org_id</item>
  3017. <item>importance</item>
  3018. <item>brand</item>
  3019. <item>model</item>
  3020. </items>
  3021. </list>
  3022. </presentation>
  3023. </class>
  3024. <class id="MobilePhone" _delta="define">
  3025. <parent>MobileCI</parent>
  3026. <properties>
  3027. <category>bizmodel,searchable,configmgmt</category>
  3028. <abstract>false</abstract>
  3029. <key_type>autoincrement</key_type>
  3030. <db_table>mobilephone</db_table>
  3031. <db_key_field>id</db_key_field>
  3032. <db_final_class_field></db_final_class_field>
  3033. <naming>
  3034. <format>%1$s</format>
  3035. <attributes>
  3036. <attribute id="name"/>
  3037. </attributes>
  3038. </naming>
  3039. <display_template></display_template>
  3040. <icon>images/mobile-phone.png</icon>
  3041. <reconciliation>
  3042. <attributes>
  3043. <attribute id="name"/>
  3044. <attribute id="org_id"/>
  3045. <attribute id="owner_name"/>
  3046. </attributes>
  3047. </reconciliation>
  3048. </properties>
  3049. <fields>
  3050. <field id="number" xsi:type="AttributeString">
  3051. <sql>number</sql>
  3052. <default_value></default_value>
  3053. <is_null_allowed>true</is_null_allowed>
  3054. </field>
  3055. <field id="imei" xsi:type="AttributeString">
  3056. <sql>IMIE</sql>
  3057. <default_value></default_value>
  3058. <is_null_allowed>true</is_null_allowed>
  3059. </field>
  3060. <field id="hw_pin" xsi:type="AttributeString">
  3061. <sql>hw_pin</sql>
  3062. <default_value></default_value>
  3063. <is_null_allowed>true</is_null_allowed>
  3064. </field>
  3065. </fields>
  3066. <methods/>
  3067. <presentation>
  3068. <details>
  3069. <items>
  3070. <item>name</item>
  3071. <item>status</item>
  3072. <item>org_id</item>
  3073. <item>importance</item>
  3074. <item>brand</item>
  3075. <item>model</item>
  3076. <item>serial_number</item>
  3077. <item>asset_ref</item>
  3078. <item>number</item>
  3079. <item>imei</item>
  3080. <item>hw_pin</item>
  3081. <item>contact_list</item>
  3082. <item>document_list</item>
  3083. <item>solution_list</item>
  3084. <item>contract_list</item>
  3085. <item>ticket_list</item>
  3086. <item>nwinterface_list</item>
  3087. </items>
  3088. </details>
  3089. <search>
  3090. <items>
  3091. <item>name</item>
  3092. <item>status</item>
  3093. <item>org_id</item>
  3094. <item>importance</item>
  3095. <item>brand</item>
  3096. <item>model</item>
  3097. <item>serial_number</item>
  3098. <item>asset_ref</item>
  3099. <item>number</item>
  3100. <item>imei</item>
  3101. </items>
  3102. </search>
  3103. <list>
  3104. <items>
  3105. <item>status</item>
  3106. <item>org_id</item>
  3107. <item>importance</item>
  3108. <item>brand</item>
  3109. <item>model</item>
  3110. </items>
  3111. </list>
  3112. </presentation>
  3113. </class>
  3114. <class id="InfrastructureCI" _delta="define">
  3115. <parent>Device</parent>
  3116. <properties>
  3117. <category>bizmodel,searchable,configmgmt</category>
  3118. <abstract>true</abstract>
  3119. <key_type>autoincrement</key_type>
  3120. <db_table>infrastructureci</db_table>
  3121. <db_key_field>id</db_key_field>
  3122. <db_final_class_field></db_final_class_field>
  3123. <naming>
  3124. <format>%1$s</format>
  3125. <attributes>
  3126. <attribute id="name"/>
  3127. </attributes>
  3128. </naming>
  3129. <display_template></display_template>
  3130. <icon>images/server.png</icon>
  3131. <reconciliation>
  3132. <attributes>
  3133. <attribute id="name"/>
  3134. <attribute id="org_id"/>
  3135. <attribute id="owner_name"/>
  3136. <attribute id="location_id"/>
  3137. <attribute id="location_name"/>
  3138. </attributes>
  3139. </reconciliation>
  3140. </properties>
  3141. <fields>
  3142. <field id="description" xsi:type="AttributeText">
  3143. <sql>description</sql>
  3144. <default_value></default_value>
  3145. <is_null_allowed>true</is_null_allowed>
  3146. </field>
  3147. <field id="location_id" xsi:type="AttributeExternalKey">
  3148. <filter><![CDATA[SELECT Location AS l WHERE l.org_id = :this->org_id]]></filter>
  3149. <dependencies>
  3150. <attribute id="org_id"/>
  3151. </dependencies>
  3152. <sql>location_id</sql>
  3153. <target_class>Location</target_class>
  3154. <is_null_allowed>true</is_null_allowed>
  3155. <on_target_delete>DEL_MANUAL</on_target_delete>
  3156. <jointype></jointype>
  3157. </field>
  3158. <field id="location_name" xsi:type="AttributeExternalField">
  3159. <extkey_attcode>location_id</extkey_attcode>
  3160. <target_attcode>name</target_attcode>
  3161. </field>
  3162. <field id="location_details" xsi:type="AttributeText">
  3163. <sql>location_details</sql>
  3164. <default_value></default_value>
  3165. <is_null_allowed>true</is_null_allowed>
  3166. </field>
  3167. <field id="management_ip" xsi:type="AttributeIPAddress">
  3168. <sql>management_ip</sql>
  3169. <default_value></default_value>
  3170. <is_null_allowed>true</is_null_allowed>
  3171. </field>
  3172. <field id="default_gateway" xsi:type="AttributeString">
  3173. <sql>default_gateway</sql>
  3174. <default_value></default_value>
  3175. <is_null_allowed>true</is_null_allowed>
  3176. </field>
  3177. </fields>
  3178. <methods/>
  3179. <presentation>
  3180. <details>
  3181. <items>
  3182. <item>name</item>
  3183. <item>status</item>
  3184. <item>org_id</item>
  3185. <item>importance</item>
  3186. <item>brand</item>
  3187. <item>model</item>
  3188. <item>serial_number</item>
  3189. <item>asset_ref</item>
  3190. <item>description</item>
  3191. <item>location_id</item>
  3192. <item>location_details</item>
  3193. <item>management_ip</item>
  3194. <item>default_gateway</item>
  3195. <item>contact_list</item>
  3196. <item>document_list</item>
  3197. <item>solution_list</item>
  3198. <item>contract_list</item>
  3199. <item>ticket_list</item>
  3200. <item>nwinterface_list</item>
  3201. </items>
  3202. </details>
  3203. <search>
  3204. <items>
  3205. <item>name</item>
  3206. <item>status</item>
  3207. <item>org_id</item>
  3208. <item>importance</item>
  3209. <item>brand</item>
  3210. <item>model</item>
  3211. <item>serial_number</item>
  3212. <item>asset_ref</item>
  3213. <item>location_id</item>
  3214. <item>management_ip</item>
  3215. <item>default_gateway</item>
  3216. </items>
  3217. </search>
  3218. <list>
  3219. <items>
  3220. <item>status</item>
  3221. <item>org_id</item>
  3222. <item>importance</item>
  3223. <item>brand</item>
  3224. <item>model</item>
  3225. <item>location_id</item>
  3226. </items>
  3227. </list>
  3228. </presentation>
  3229. </class>
  3230. <class id="NetworkDevice" _delta="define">
  3231. <parent>InfrastructureCI</parent>
  3232. <properties>
  3233. <category>bizmodel,searchable,configmgmt</category>
  3234. <abstract>false</abstract>
  3235. <key_type>autoincrement</key_type>
  3236. <db_table>networkdevice</db_table>
  3237. <db_key_field>id</db_key_field>
  3238. <db_final_class_field></db_final_class_field>
  3239. <naming>
  3240. <format>%1$s</format>
  3241. <attributes>
  3242. <attribute id="name"/>
  3243. </attributes>
  3244. </naming>
  3245. <display_template></display_template>
  3246. <icon>images/switch.png</icon>
  3247. <reconciliation>
  3248. <attributes>
  3249. <attribute id="name"/>
  3250. <attribute id="org_id"/>
  3251. <attribute id="owner_name"/>
  3252. <attribute id="location_id"/>
  3253. <attribute id="location_name"/>
  3254. </attributes>
  3255. </reconciliation>
  3256. </properties>
  3257. <fields>
  3258. <field id="type" xsi:type="AttributeEnum">
  3259. <values>
  3260. <value>wanaccelerator</value>
  3261. <value>firewall</value>
  3262. <value>hub</value>
  3263. <value>loadbalancer</value>
  3264. <value>router</value>
  3265. <value>switch</value>
  3266. </values>
  3267. <sql>type</sql>
  3268. <default_value>switch</default_value>
  3269. <is_null_allowed>true</is_null_allowed>
  3270. </field>
  3271. <field id="ios_version" xsi:type="AttributeString">
  3272. <sql>ios_version</sql>
  3273. <default_value></default_value>
  3274. <is_null_allowed>true</is_null_allowed>
  3275. </field>
  3276. <field id="ram" xsi:type="AttributeString">
  3277. <sql>ram</sql>
  3278. <default_value></default_value>
  3279. <is_null_allowed>true</is_null_allowed>
  3280. </field>
  3281. <field id="snmp_read" xsi:type="AttributeString">
  3282. <sql>snmp_read</sql>
  3283. <default_value></default_value>
  3284. <is_null_allowed>true</is_null_allowed>
  3285. </field>
  3286. <field id="snmp_write" xsi:type="AttributeString">
  3287. <sql>snmp_write</sql>
  3288. <default_value></default_value>
  3289. <is_null_allowed>true</is_null_allowed>
  3290. </field>
  3291. </fields>
  3292. <methods/>
  3293. <presentation>
  3294. <details>
  3295. <items>
  3296. <item>name</item>
  3297. <item>status</item>
  3298. <item>org_id</item>
  3299. <item>importance</item>
  3300. <item>brand</item>
  3301. <item>model</item>
  3302. <item>serial_number</item>
  3303. <item>asset_ref</item>
  3304. <item>description</item>
  3305. <item>location_id</item>
  3306. <item>location_details</item>
  3307. <item>management_ip</item>
  3308. <item>default_gateway</item>
  3309. <item>type</item>
  3310. <item>ios_version</item>
  3311. <item>ram</item>
  3312. <item>snmp_read</item>
  3313. <item>snmp_write</item>
  3314. <item>contact_list</item>
  3315. <item>document_list</item>
  3316. <item>solution_list</item>
  3317. <item>contract_list</item>
  3318. <item>ticket_list</item>
  3319. <item>nwinterface_list</item>
  3320. </items>
  3321. </details>
  3322. <search>
  3323. <items>
  3324. <item>name</item>
  3325. <item>status</item>
  3326. <item>org_id</item>
  3327. <item>importance</item>
  3328. <item>brand</item>
  3329. <item>model</item>
  3330. <item>serial_number</item>
  3331. <item>asset_ref</item>
  3332. <item>location_id</item>
  3333. <item>management_ip</item>
  3334. <item>default_gateway</item>
  3335. <item>type</item>
  3336. <item>ios_version</item>
  3337. </items>
  3338. </search>
  3339. <list>
  3340. <items>
  3341. <item>status</item>
  3342. <item>org_id</item>
  3343. <item>importance</item>
  3344. <item>brand</item>
  3345. <item>model</item>
  3346. <item>location_id</item>
  3347. <item>type</item>
  3348. </items>
  3349. </list>
  3350. </presentation>
  3351. </class>
  3352. <class id="Server" _delta="define">
  3353. <parent>InfrastructureCI</parent>
  3354. <properties>
  3355. <category>bizmodel,searchable,configmgmt</category>
  3356. <abstract>false</abstract>
  3357. <key_type>autoincrement</key_type>
  3358. <db_table>server</db_table>
  3359. <db_key_field>id</db_key_field>
  3360. <db_final_class_field></db_final_class_field>
  3361. <naming>
  3362. <format>%1$s</format>
  3363. <attributes>
  3364. <attribute id="name"/>
  3365. </attributes>
  3366. </naming>
  3367. <display_template></display_template>
  3368. <icon>images/server.png</icon>
  3369. <reconciliation>
  3370. <attributes>
  3371. <attribute id="name"/>
  3372. <attribute id="org_id"/>
  3373. <attribute id="owner_name"/>
  3374. <attribute id="location_id"/>
  3375. <attribute id="location_name"/>
  3376. </attributes>
  3377. </reconciliation>
  3378. </properties>
  3379. <fields>
  3380. <field id="cpu" xsi:type="AttributeString">
  3381. <sql>cpu</sql>
  3382. <default_value></default_value>
  3383. <is_null_allowed>true</is_null_allowed>
  3384. </field>
  3385. <field id="ram" xsi:type="AttributeString">
  3386. <sql>ram</sql>
  3387. <default_value></default_value>
  3388. <is_null_allowed>true</is_null_allowed>
  3389. </field>
  3390. <field id="hdd" xsi:type="AttributeString">
  3391. <sql>hdd</sql>
  3392. <default_value></default_value>
  3393. <is_null_allowed>true</is_null_allowed>
  3394. </field>
  3395. <field id="os_family" xsi:type="AttributeString">
  3396. <sql>os_family</sql>
  3397. <default_value></default_value>
  3398. <is_null_allowed>true</is_null_allowed>
  3399. </field>
  3400. <field id="os_version" xsi:type="AttributeString">
  3401. <sql>os_version</sql>
  3402. <default_value></default_value>
  3403. <is_null_allowed>true</is_null_allowed>
  3404. </field>
  3405. <field id="application_list" xsi:type="AttributeLinkedSet">
  3406. <linked_class>SoftwareInstance</linked_class>
  3407. <ext_key_to_me>device_id</ext_key_to_me>
  3408. <count_min>0</count_min>
  3409. <count_max>0</count_max>
  3410. </field>
  3411. <field id="patch_list" xsi:type="AttributeLinkedSetIndirect">
  3412. <linked_class>lnkPatchToCI</linked_class>
  3413. <ext_key_to_me>ci_id</ext_key_to_me>
  3414. <count_min>0</count_min>
  3415. <count_max>0</count_max>
  3416. <ext_key_to_remote>patch_id</ext_key_to_remote>
  3417. </field>
  3418. </fields>
  3419. <methods/>
  3420. <presentation>
  3421. <details>
  3422. <items>
  3423. <item>name</item>
  3424. <item>status</item>
  3425. <item>org_id</item>
  3426. <item>importance</item>
  3427. <item>brand</item>
  3428. <item>model</item>
  3429. <item>serial_number</item>
  3430. <item>asset_ref</item>
  3431. <item>description</item>
  3432. <item>location_id</item>
  3433. <item>location_details</item>
  3434. <item>management_ip</item>
  3435. <item>default_gateway</item>
  3436. <item>cpu</item>
  3437. <item>ram</item>
  3438. <item>hdd</item>
  3439. <item>os_family</item>
  3440. <item>os_version</item>
  3441. <item>contact_list</item>
  3442. <item>document_list</item>
  3443. <item>solution_list</item>
  3444. <item>contract_list</item>
  3445. <item>ticket_list</item>
  3446. <item>nwinterface_list</item>
  3447. <item>application_list</item>
  3448. <item>patch_list</item>
  3449. </items>
  3450. </details>
  3451. <search>
  3452. <items>
  3453. <item>name</item>
  3454. <item>status</item>
  3455. <item>org_id</item>
  3456. <item>importance</item>
  3457. <item>brand</item>
  3458. <item>model</item>
  3459. <item>serial_number</item>
  3460. <item>asset_ref</item>
  3461. <item>location_id</item>
  3462. <item>management_ip</item>
  3463. <item>default_gateway</item>
  3464. <item>os_family</item>
  3465. <item>os_version</item>
  3466. </items>
  3467. </search>
  3468. <list>
  3469. <items>
  3470. <item>status</item>
  3471. <item>org_id</item>
  3472. <item>importance</item>
  3473. <item>brand</item>
  3474. <item>model</item>
  3475. <item>location_id</item>
  3476. <item>os_family</item>
  3477. </items>
  3478. </list>
  3479. </presentation>
  3480. </class>
  3481. <class id="Printer" _delta="define">
  3482. <parent>InfrastructureCI</parent>
  3483. <properties>
  3484. <category>bizmodel,searchable,configmgmt</category>
  3485. <abstract>false</abstract>
  3486. <key_type>autoincrement</key_type>
  3487. <db_table>printer</db_table>
  3488. <db_key_field>id</db_key_field>
  3489. <db_final_class_field></db_final_class_field>
  3490. <naming>
  3491. <format>%1$s</format>
  3492. <attributes>
  3493. <attribute id="name"/>
  3494. </attributes>
  3495. </naming>
  3496. <display_template></display_template>
  3497. <icon>images/printer.png</icon>
  3498. <reconciliation>
  3499. <attributes>
  3500. <attribute id="name"/>
  3501. <attribute id="org_id"/>
  3502. <attribute id="owner_name"/>
  3503. <attribute id="location_id"/>
  3504. <attribute id="location_name"/>
  3505. </attributes>
  3506. </reconciliation>
  3507. </properties>
  3508. <fields>
  3509. <field id="type" xsi:type="AttributeEnum">
  3510. <values>
  3511. <value>mopier</value>
  3512. <value>printer</value>
  3513. </values>
  3514. <sql>type</sql>
  3515. <default_value>printer</default_value>
  3516. <is_null_allowed>true</is_null_allowed>
  3517. </field>
  3518. <field id="technology" xsi:type="AttributeEnum">
  3519. <values>
  3520. <value>laser</value>
  3521. <value>inkjet</value>
  3522. <value>tracer</value>
  3523. </values>
  3524. <sql>technology</sql>
  3525. <default_value>laser</default_value>
  3526. <is_null_allowed>true</is_null_allowed>
  3527. </field>
  3528. </fields>
  3529. <methods/>
  3530. <presentation>
  3531. <details>
  3532. <items>
  3533. <item>name</item>
  3534. <item>status</item>
  3535. <item>org_id</item>
  3536. <item>importance</item>
  3537. <item>brand</item>
  3538. <item>model</item>
  3539. <item>serial_number</item>
  3540. <item>asset_ref</item>
  3541. <item>description</item>
  3542. <item>location_id</item>
  3543. <item>location_details</item>
  3544. <item>management_ip</item>
  3545. <item>default_gateway</item>
  3546. <item>type</item>
  3547. <item>technology</item>
  3548. <item>contact_list</item>
  3549. <item>document_list</item>
  3550. <item>solution_list</item>
  3551. <item>contract_list</item>
  3552. <item>ticket_list</item>
  3553. <item>nwinterface_list</item>
  3554. </items>
  3555. </details>
  3556. <search>
  3557. <items>
  3558. <item>name</item>
  3559. <item>status</item>
  3560. <item>org_id</item>
  3561. <item>importance</item>
  3562. <item>brand</item>
  3563. <item>model</item>
  3564. <item>serial_number</item>
  3565. <item>asset_ref</item>
  3566. <item>description</item>
  3567. <item>location_id</item>
  3568. <item>location_details</item>
  3569. <item>management_ip</item>
  3570. <item>default_gateway</item>
  3571. <item>type</item>
  3572. <item>technology</item>
  3573. </items>
  3574. </search>
  3575. <list>
  3576. <items>
  3577. <item>status</item>
  3578. <item>org_id</item>
  3579. <item>importance</item>
  3580. <item>brand</item>
  3581. <item>model</item>
  3582. <item>serial_number</item>
  3583. <item>asset_ref</item>
  3584. <item>location_id</item>
  3585. <item>management_ip</item>
  3586. <item>default_gateway</item>
  3587. <item>type</item>
  3588. <item>technology</item>
  3589. </items>
  3590. </list>
  3591. </presentation>
  3592. </class>
  3593. <class id="Group" _delta="define">
  3594. <parent>cmdbAbstractObject</parent>
  3595. <properties>
  3596. <category>bizmodel,searchable,configmgmt</category>
  3597. <abstract>false</abstract>
  3598. <key_type>autoincrement</key_type>
  3599. <db_table>group</db_table>
  3600. <db_key_field>id</db_key_field>
  3601. <db_final_class_field></db_final_class_field>
  3602. <naming>
  3603. <format>%1$s</format>
  3604. <attributes>
  3605. <attribute id="name"/>
  3606. </attributes>
  3607. </naming>
  3608. <display_template></display_template>
  3609. <icon>images/group.png</icon>
  3610. <reconciliation>
  3611. <attributes>
  3612. <attribute id="name"/>
  3613. <attribute id="org_id"/>
  3614. <attribute id="owner_name"/>
  3615. </attributes>
  3616. </reconciliation>
  3617. </properties>
  3618. <fields>
  3619. <field id="name" xsi:type="AttributeString">
  3620. <sql>name</sql>
  3621. <default_value></default_value>
  3622. <is_null_allowed>false</is_null_allowed>
  3623. </field>
  3624. <field id="status" xsi:type="AttributeEnum">
  3625. <values>
  3626. <value>production</value>
  3627. <value>implementation</value>
  3628. <value>obsolete</value>
  3629. </values>
  3630. <sql>status</sql>
  3631. <default_value>implementation</default_value>
  3632. <is_null_allowed>false</is_null_allowed>
  3633. </field>
  3634. <field id="org_id" xsi:type="AttributeExternalKey">
  3635. <sql>org_id</sql>
  3636. <target_class>Organization</target_class>
  3637. <is_null_allowed>false</is_null_allowed>
  3638. <on_target_delete>DEL_MANUAL</on_target_delete>
  3639. <jointype></jointype>
  3640. </field>
  3641. <field id="owner_name" xsi:type="AttributeExternalField">
  3642. <extkey_attcode>org_id</extkey_attcode>
  3643. <target_attcode>name</target_attcode>
  3644. </field>
  3645. <field id="description" xsi:type="AttributeText">
  3646. <sql>description</sql>
  3647. <default_value></default_value>
  3648. <is_null_allowed>true</is_null_allowed>
  3649. </field>
  3650. <field id="type" xsi:type="AttributeString">
  3651. <sql>type</sql>
  3652. <default_value></default_value>
  3653. <is_null_allowed>true</is_null_allowed>
  3654. </field>
  3655. <field id="parent_id" xsi:type="AttributeHierarchicalKey">
  3656. <dependencies>
  3657. <attribute id="org_id"/>
  3658. </dependencies>
  3659. <sql>parent_id</sql>
  3660. <is_null_allowed>true</is_null_allowed>
  3661. <on_target_delete>DEL_MANUAL</on_target_delete>
  3662. </field>
  3663. <field id="parent_name" xsi:type="AttributeExternalField">
  3664. <extkey_attcode>parent_id</extkey_attcode>
  3665. <target_attcode>name</target_attcode>
  3666. </field>
  3667. <field id="ci_list" xsi:type="AttributeLinkedSetIndirect">
  3668. <linked_class>lnkGroupToCI</linked_class>
  3669. <ext_key_to_me>group_id</ext_key_to_me>
  3670. <count_min>0</count_min>
  3671. <count_max>0</count_max>
  3672. <ext_key_to_remote>ci_id</ext_key_to_remote>
  3673. </field>
  3674. </fields>
  3675. <methods/>
  3676. <presentation>
  3677. <details>
  3678. <items>
  3679. <item>name</item>
  3680. <item>status</item>
  3681. <item>org_id</item>
  3682. <item>type</item>
  3683. <item>description</item>
  3684. <item>parent_id</item>
  3685. <item>ci_list</item>
  3686. </items>
  3687. </details>
  3688. <search>
  3689. <items>
  3690. <item>name</item>
  3691. <item>status</item>
  3692. <item>org_id</item>
  3693. <item>type</item>
  3694. </items>
  3695. </search>
  3696. <list>
  3697. <items>
  3698. <item>status</item>
  3699. <item>org_id</item>
  3700. <item>type</item>
  3701. <item>parent_id</item>
  3702. </items>
  3703. </list>
  3704. </presentation>
  3705. </class>
  3706. <class id="lnkGroupToCI" _delta="define">
  3707. <parent>cmdbAbstractObject</parent>
  3708. <properties>
  3709. <is_link>1</is_link>
  3710. <category>bizmodel,configmgmt</category>
  3711. <abstract>false</abstract>
  3712. <key_type>autoincrement</key_type>
  3713. <db_table>lnkgrouptoci</db_table>
  3714. <db_key_field>id</db_key_field>
  3715. <db_final_class_field></db_final_class_field>
  3716. <naming>
  3717. <format>%1$s</format>
  3718. <attributes>
  3719. <attribute id="group_id"/>
  3720. </attributes>
  3721. </naming>
  3722. <display_template></display_template>
  3723. <icon></icon>
  3724. <reconciliation>
  3725. <attributes>
  3726. <attribute id="group_id"/>
  3727. <attribute id="ci_id"/>
  3728. </attributes>
  3729. </reconciliation>
  3730. </properties>
  3731. <fields>
  3732. <field id="group_id" xsi:type="AttributeExternalKey">
  3733. <sql>group_id</sql>
  3734. <target_class>Group</target_class>
  3735. <is_null_allowed>false</is_null_allowed>
  3736. <on_target_delete>DEL_MANUAL</on_target_delete>
  3737. <jointype></jointype>
  3738. </field>
  3739. <field id="group_name" xsi:type="AttributeExternalField">
  3740. <extkey_attcode>group_id</extkey_attcode>
  3741. <target_attcode>name</target_attcode>
  3742. </field>
  3743. <field id="ci_id" xsi:type="AttributeExternalKey">
  3744. <sql>ci_id</sql>
  3745. <target_class>FunctionalCI</target_class>
  3746. <is_null_allowed>false</is_null_allowed>
  3747. <on_target_delete>DEL_MANUAL</on_target_delete>
  3748. <jointype></jointype>
  3749. </field>
  3750. <field id="ci_name" xsi:type="AttributeExternalField">
  3751. <extkey_attcode>ci_id</extkey_attcode>
  3752. <target_attcode>name</target_attcode>
  3753. </field>
  3754. <field id="ci_status" xsi:type="AttributeExternalField">
  3755. <extkey_attcode>ci_id</extkey_attcode>
  3756. <target_attcode>status</target_attcode>
  3757. </field>
  3758. <field id="reason" xsi:type="AttributeString">
  3759. <sql>reason</sql>
  3760. <default_value></default_value>
  3761. <is_null_allowed>true</is_null_allowed>
  3762. </field>
  3763. </fields>
  3764. <methods/>
  3765. <presentation>
  3766. <details>
  3767. <items>
  3768. <item>group_id</item>
  3769. <item>ci_id</item>
  3770. <item>ci_status</item>
  3771. <item>reason</item>
  3772. </items>
  3773. </details>
  3774. <search>
  3775. <items>
  3776. <item>group_id</item>
  3777. <item>ci_id</item>
  3778. <item>reason</item>
  3779. </items>
  3780. </search>
  3781. <list>
  3782. <items>
  3783. <item>group_id</item>
  3784. <item>ci_id</item>
  3785. <item>ci_status</item>
  3786. <item>reason</item>
  3787. </items>
  3788. </list>
  3789. </presentation>
  3790. </class>
  3791. <class id="lnkCIToDoc" _delta="define">
  3792. <parent>cmdbAbstractObject</parent>
  3793. <properties>
  3794. <is_link>1</is_link>
  3795. <category>bizmodel,configmgmt</category>
  3796. <abstract>false</abstract>
  3797. <key_type>autoincrement</key_type>
  3798. <db_table>lnkcitodoc</db_table>
  3799. <db_key_field>id</db_key_field>
  3800. <db_final_class_field></db_final_class_field>
  3801. <naming>
  3802. <format>%1$s</format>
  3803. <attributes>
  3804. <attribute id="ci_id"/>
  3805. </attributes>
  3806. </naming>
  3807. <display_template></display_template>
  3808. <icon></icon>
  3809. <reconciliation>
  3810. <attributes>
  3811. <attribute id="ci_id"/>
  3812. <attribute id="document_id"/>
  3813. </attributes>
  3814. </reconciliation>
  3815. </properties>
  3816. <fields>
  3817. <field id="ci_id" xsi:type="AttributeExternalKey">
  3818. <sql>ci_id</sql>
  3819. <target_class>FunctionalCI</target_class>
  3820. <is_null_allowed>false</is_null_allowed>
  3821. <on_target_delete>DEL_AUTO</on_target_delete>
  3822. <jointype></jointype>
  3823. </field>
  3824. <field id="ci_name" xsi:type="AttributeExternalField">
  3825. <extkey_attcode>ci_id</extkey_attcode>
  3826. <target_attcode>name</target_attcode>
  3827. </field>
  3828. <field id="ci_status" xsi:type="AttributeExternalField">
  3829. <extkey_attcode>ci_id</extkey_attcode>
  3830. <target_attcode>status</target_attcode>
  3831. </field>
  3832. <field id="document_id" xsi:type="AttributeExternalKey">
  3833. <sql>document_id</sql>
  3834. <target_class>Document</target_class>
  3835. <is_null_allowed>false</is_null_allowed>
  3836. <on_target_delete>DEL_AUTO</on_target_delete>
  3837. <jointype></jointype>
  3838. </field>
  3839. <field id="document_name" xsi:type="AttributeExternalField">
  3840. <extkey_attcode>document_id</extkey_attcode>
  3841. <target_attcode>name</target_attcode>
  3842. </field>
  3843. <field id="document_type" xsi:type="AttributeExternalField">
  3844. <extkey_attcode>document_id</extkey_attcode>
  3845. <target_attcode>type</target_attcode>
  3846. </field>
  3847. <field id="document_status" xsi:type="AttributeExternalField">
  3848. <extkey_attcode>document_id</extkey_attcode>
  3849. <target_attcode>status</target_attcode>
  3850. </field>
  3851. </fields>
  3852. <methods/>
  3853. <presentation>
  3854. <details>
  3855. <items>
  3856. <item>ci_id</item>
  3857. <item>ci_status</item>
  3858. <item>document_id</item>
  3859. <item>document_type</item>
  3860. <item>document_status</item>
  3861. </items>
  3862. </details>
  3863. <search>
  3864. <items>
  3865. <item>ci_id</item>
  3866. <item>document_id</item>
  3867. </items>
  3868. </search>
  3869. <list>
  3870. <items>
  3871. <item>ci_id</item>
  3872. <item>ci_status</item>
  3873. <item>document_id</item>
  3874. <item>document_type</item>
  3875. <item>document_status</item>
  3876. </items>
  3877. </list>
  3878. </presentation>
  3879. </class>
  3880. <class id="lnkCIToContact" _delta="define">
  3881. <parent>cmdbAbstractObject</parent>
  3882. <properties>
  3883. <is_link>1</is_link>
  3884. <category>bizmodel,configmgmt</category>
  3885. <abstract>false</abstract>
  3886. <key_type>autoincrement</key_type>
  3887. <db_table>lnkcitocontact</db_table>
  3888. <db_key_field>id</db_key_field>
  3889. <db_final_class_field></db_final_class_field>
  3890. <naming>
  3891. <format>%1$s</format>
  3892. <attributes>
  3893. <attribute id="ci_id"/>
  3894. </attributes>
  3895. </naming>
  3896. <display_template></display_template>
  3897. <icon>images/contact.png</icon>
  3898. <reconciliation>
  3899. <attributes>
  3900. <attribute id="ci_id"/>
  3901. <attribute id="contact_id"/>
  3902. </attributes>
  3903. </reconciliation>
  3904. </properties>
  3905. <fields>
  3906. <field id="ci_id" xsi:type="AttributeExternalKey">
  3907. <sql>ci_id</sql>
  3908. <target_class>FunctionalCI</target_class>
  3909. <is_null_allowed>false</is_null_allowed>
  3910. <on_target_delete>DEL_AUTO</on_target_delete>
  3911. <jointype></jointype>
  3912. </field>
  3913. <field id="ci_name" xsi:type="AttributeExternalField">
  3914. <extkey_attcode>ci_id</extkey_attcode>
  3915. <target_attcode>name</target_attcode>
  3916. </field>
  3917. <field id="ci_status" xsi:type="AttributeExternalField">
  3918. <extkey_attcode>ci_id</extkey_attcode>
  3919. <target_attcode>status</target_attcode>
  3920. </field>
  3921. <field id="contact_id" xsi:type="AttributeExternalKey">
  3922. <sql>contact_id</sql>
  3923. <target_class>Contact</target_class>
  3924. <is_null_allowed>false</is_null_allowed>
  3925. <on_target_delete>DEL_AUTO</on_target_delete>
  3926. <jointype></jointype>
  3927. </field>
  3928. <field id="contact_name" xsi:type="AttributeExternalField">
  3929. <extkey_attcode>contact_id</extkey_attcode>
  3930. <target_attcode>name</target_attcode>
  3931. </field>
  3932. <field id="contact_email" xsi:type="AttributeExternalField">
  3933. <extkey_attcode>contact_id</extkey_attcode>
  3934. <target_attcode>email</target_attcode>
  3935. </field>
  3936. <field id="role" xsi:type="AttributeString">
  3937. <sql>role</sql>
  3938. <default_value></default_value>
  3939. <is_null_allowed>true</is_null_allowed>
  3940. </field>
  3941. </fields>
  3942. <methods/>
  3943. <presentation>
  3944. <details>
  3945. <items>
  3946. <item>ci_id</item>
  3947. <item>ci_status</item>
  3948. <item>contact_id</item>
  3949. <item>contact_email</item>
  3950. <item>role</item>
  3951. </items>
  3952. </details>
  3953. <search>
  3954. <items>
  3955. <item>ci_id</item>
  3956. <item>contact_id</item>
  3957. <item>role</item>
  3958. </items>
  3959. </search>
  3960. <list>
  3961. <items>
  3962. <item>ci_id</item>
  3963. <item>ci_status</item>
  3964. <item>contact_id</item>
  3965. <item>contact_email</item>
  3966. <item>role</item>
  3967. </items>
  3968. </list>
  3969. </presentation>
  3970. </class>
  3971. <class id="lnkSolutionToCI" _delta="define">
  3972. <parent>cmdbAbstractObject</parent>
  3973. <properties>
  3974. <is_link>1</is_link>
  3975. <category>bizmodel,configmgmt</category>
  3976. <abstract>false</abstract>
  3977. <key_type>autoincrement</key_type>
  3978. <db_table>lnksolutiontoci</db_table>
  3979. <db_key_field>id</db_key_field>
  3980. <db_final_class_field></db_final_class_field>
  3981. <naming>
  3982. <format>%1$s</format>
  3983. <attributes>
  3984. <attribute id="solution_id"/>
  3985. </attributes>
  3986. </naming>
  3987. <display_template></display_template>
  3988. <icon></icon>
  3989. <reconciliation>
  3990. <attributes>
  3991. <attribute id="solution_id"/>
  3992. <attribute id="ci_id"/>
  3993. </attributes>
  3994. </reconciliation>
  3995. </properties>
  3996. <fields>
  3997. <field id="solution_id" xsi:type="AttributeExternalKey">
  3998. <sql>solution_id</sql>
  3999. <target_class>ApplicationSolution</target_class>
  4000. <is_null_allowed>false</is_null_allowed>
  4001. <on_target_delete>DEL_AUTO</on_target_delete>
  4002. <jointype></jointype>
  4003. </field>
  4004. <field id="solution_name" xsi:type="AttributeExternalField">
  4005. <extkey_attcode>solution_id</extkey_attcode>
  4006. <target_attcode>name</target_attcode>
  4007. </field>
  4008. <field id="ci_id" xsi:type="AttributeExternalKey">
  4009. <sql>ci_id</sql>
  4010. <target_class>FunctionalCI</target_class>
  4011. <is_null_allowed>false</is_null_allowed>
  4012. <on_target_delete>DEL_AUTO</on_target_delete>
  4013. <jointype></jointype>
  4014. </field>
  4015. <field id="ci_name" xsi:type="AttributeExternalField">
  4016. <extkey_attcode>ci_id</extkey_attcode>
  4017. <target_attcode>name</target_attcode>
  4018. </field>
  4019. <field id="ci_status" xsi:type="AttributeExternalField">
  4020. <extkey_attcode>ci_id</extkey_attcode>
  4021. <target_attcode>status</target_attcode>
  4022. </field>
  4023. <field id="utility" xsi:type="AttributeString">
  4024. <sql>utility</sql>
  4025. <default_value></default_value>
  4026. <is_null_allowed>true</is_null_allowed>
  4027. </field>
  4028. </fields>
  4029. <methods/>
  4030. <presentation>
  4031. <details>
  4032. <items>
  4033. <item>solution_id</item>
  4034. <item>ci_id</item>
  4035. <item>ci_status</item>
  4036. <item>utility</item>
  4037. </items>
  4038. </details>
  4039. <search>
  4040. <items>
  4041. <item>solution_id</item>
  4042. <item>ci_id</item>
  4043. <item>utility</item>
  4044. </items>
  4045. </search>
  4046. <list>
  4047. <items>
  4048. <item>solution_id</item>
  4049. <item>ci_id</item>
  4050. <item>ci_status</item>
  4051. <item>utility</item>
  4052. </items>
  4053. </list>
  4054. </presentation>
  4055. </class>
  4056. <class id="lnkProcessToSolution" _delta="define">
  4057. <parent>cmdbAbstractObject</parent>
  4058. <properties>
  4059. <is_link>1</is_link>
  4060. <category>bizmodel,configmgmt</category>
  4061. <abstract>false</abstract>
  4062. <key_type>autoincrement</key_type>
  4063. <db_table>lnkprocesstosolution</db_table>
  4064. <db_key_field>id</db_key_field>
  4065. <db_final_class_field></db_final_class_field>
  4066. <naming>
  4067. <format>%1$s</format>
  4068. <attributes>
  4069. <attribute id="solution_id"/>
  4070. </attributes>
  4071. </naming>
  4072. <display_template></display_template>
  4073. <icon></icon>
  4074. <reconciliation>
  4075. <attributes>
  4076. <attribute id="solution_id"/>
  4077. <attribute id="process_id"/>
  4078. </attributes>
  4079. </reconciliation>
  4080. </properties>
  4081. <fields>
  4082. <field id="solution_id" xsi:type="AttributeExternalKey">
  4083. <sql>solution_id</sql>
  4084. <target_class>ApplicationSolution</target_class>
  4085. <is_null_allowed>false</is_null_allowed>
  4086. <on_target_delete>DEL_AUTO</on_target_delete>
  4087. <jointype></jointype>
  4088. </field>
  4089. <field id="solution_name" xsi:type="AttributeExternalField">
  4090. <extkey_attcode>solution_id</extkey_attcode>
  4091. <target_attcode>name</target_attcode>
  4092. </field>
  4093. <field id="process_id" xsi:type="AttributeExternalKey">
  4094. <sql>process_id</sql>
  4095. <target_class>BusinessProcess</target_class>
  4096. <is_null_allowed>false</is_null_allowed>
  4097. <on_target_delete>DEL_AUTO</on_target_delete>
  4098. <jointype></jointype>
  4099. </field>
  4100. <field id="process_name" xsi:type="AttributeExternalField">
  4101. <extkey_attcode>process_id</extkey_attcode>
  4102. <target_attcode>name</target_attcode>
  4103. </field>
  4104. <field id="reason" xsi:type="AttributeString">
  4105. <sql>reason</sql>
  4106. <default_value></default_value>
  4107. <is_null_allowed>true</is_null_allowed>
  4108. </field>
  4109. </fields>
  4110. <methods/>
  4111. <presentation>
  4112. <details>
  4113. <items>
  4114. <item>solution_id</item>
  4115. <item>process_id</item>
  4116. <item>reason</item>
  4117. </items>
  4118. </details>
  4119. <search>
  4120. <items>
  4121. <item>solution_id</item>
  4122. <item>process_id</item>
  4123. <item>reason</item>
  4124. </items>
  4125. </search>
  4126. <list>
  4127. <items>
  4128. <item>solution_id</item>
  4129. <item>process_id</item>
  4130. <item>reason</item>
  4131. </items>
  4132. </list>
  4133. </presentation>
  4134. </class>
  4135. </classes>
  4136. <menus>
  4137. <menu id="DataAdministration" xsi:type="MenuGroup">
  4138. <rank>70</rank>
  4139. <enable_class>Organization</enable_class>
  4140. <enable_action>UR_ACTION_MODIFY</enable_action>
  4141. <enable_permission>UR_ALLOWED_YES</enable_permission>
  4142. <enable_stimulus/>
  4143. </menu>
  4144. <menu id="Audit" xsi:type="WebPageMenuNode">
  4145. <rank>33</rank>
  4146. <parent>DataAdministration</parent>
  4147. <url>$pages/audit.php</url>
  4148. </menu>
  4149. <menu id="Catalogs" xsi:type="TemplateMenuNode">
  4150. <rank>50</rank>
  4151. <parent>DataAdministration</parent>
  4152. <template_file></template_file>
  4153. </menu>
  4154. <menu id="Organization" xsi:type="OQLMenuNode">
  4155. <rank>10</rank>
  4156. <parent>Catalogs</parent>
  4157. <oql>SELECT Organization</oql>
  4158. <do_search>1</do_search>
  4159. </menu>
  4160. <menu id="Application" xsi:type="OQLMenuNode">
  4161. <rank>20</rank>
  4162. <parent>Catalogs</parent>
  4163. <oql>SELECT Application</oql>
  4164. <do_search></do_search>
  4165. </menu>
  4166. <menu id="DBServer" xsi:type="OQLMenuNode">
  4167. <rank>40</rank>
  4168. <parent>Catalogs</parent>
  4169. <oql>SELECT DBServer</oql>
  4170. <do_search></do_search>
  4171. </menu>
  4172. <menu id="ConfigManagement" xsi:type="MenuGroup">
  4173. <rank>20</rank>
  4174. </menu>
  4175. <menu id="ConfigManagementOverview" xsi:type="TemplateMenuNode">
  4176. <rank>0</rank>
  4177. <parent>ConfigManagement</parent>
  4178. <template_file>overview.html</template_file>
  4179. </menu>
  4180. <menu id="Contact" xsi:type="TemplateMenuNode">
  4181. <rank>1</rank>
  4182. <parent>ConfigManagement</parent>
  4183. <template_file>contacts_menu.html</template_file>
  4184. </menu>
  4185. <menu id="NewContact" xsi:type="NewObjectMenuNode">
  4186. <rank>1</rank>
  4187. <parent>Contact</parent>
  4188. <class>Contact</class>
  4189. </menu>
  4190. <menu id="SearchContacts" xsi:type="SearchMenuNode">
  4191. <rank>2</rank>
  4192. <parent>Contact</parent>
  4193. <class>Contact</class>
  4194. </menu>
  4195. <menu id="Document" xsi:type="OQLMenuNode">
  4196. <rank>2</rank>
  4197. <parent>ConfigManagement</parent>
  4198. <oql>SELECT Document</oql>
  4199. <do_search>1</do_search>
  4200. </menu>
  4201. <menu id="Location" xsi:type="OQLMenuNode">
  4202. <rank>3</rank>
  4203. <parent>ConfigManagement</parent>
  4204. <oql>SELECT Location</oql>
  4205. <do_search>1</do_search>
  4206. </menu>
  4207. <menu id="Group" xsi:type="OQLMenuNode">
  4208. <rank>4</rank>
  4209. <parent>ConfigManagement</parent>
  4210. <oql>SELECT Group</oql>
  4211. <do_search>1</do_search>
  4212. </menu>
  4213. <menu id="ConfigManagementCI" xsi:type="TemplateMenuNode">
  4214. <rank>5</rank>
  4215. <parent>ConfigManagement</parent>
  4216. <template_file>cis_menu.html</template_file>
  4217. </menu>
  4218. <menu id="NewCI" xsi:type="NewObjectMenuNode">
  4219. <rank>0</rank>
  4220. <parent>ConfigManagementCI</parent>
  4221. <class>FunctionalCI</class>
  4222. </menu>
  4223. <menu id="SearchCIs" xsi:type="SearchMenuNode">
  4224. <rank>1</rank>
  4225. <parent>ConfigManagementCI</parent>
  4226. <class>FunctionalCI</class>
  4227. </menu>
  4228. <menu id="ConfigManagement:Shortcuts" xsi:type="TemplateMenuNode">
  4229. <rank>6</rank>
  4230. <parent>ConfigManagement</parent>
  4231. <template_file></template_file>
  4232. </menu>
  4233. <menu id="Server" xsi:type="OQLMenuNode">
  4234. <rank>1</rank>
  4235. <parent>ConfigManagement:Shortcuts</parent>
  4236. <oql>SELECT Server</oql>
  4237. <do_search></do_search>
  4238. </menu>
  4239. <menu id="NetworkDevice" xsi:type="OQLMenuNode">
  4240. <rank>2</rank>
  4241. <parent>ConfigManagement:Shortcuts</parent>
  4242. <oql>SELECT NetworkDevice</oql>
  4243. <do_search></do_search>
  4244. </menu>
  4245. <menu id="Printer" xsi:type="OQLMenuNode">
  4246. <rank>3</rank>
  4247. <parent>ConfigManagement:Shortcuts</parent>
  4248. <oql>SELECT Printer</oql>
  4249. <do_search></do_search>
  4250. </menu>
  4251. <menu id="PC" xsi:type="OQLMenuNode">
  4252. <rank>4</rank>
  4253. <parent>ConfigManagement:Shortcuts</parent>
  4254. <oql>SELECT PC</oql>
  4255. <do_search></do_search>
  4256. </menu>
  4257. <menu id="BusinessProcess" xsi:type="OQLMenuNode">
  4258. <rank>5</rank>
  4259. <parent>ConfigManagement:Shortcuts</parent>
  4260. <oql>SELECT BusinessProcess</oql>
  4261. <do_search></do_search>
  4262. </menu>
  4263. <menu id="ApplicationSolution" xsi:type="OQLMenuNode">
  4264. <rank>6</rank>
  4265. <parent>ConfigManagement:Shortcuts</parent>
  4266. <oql>SELECT ApplicationSolution</oql>
  4267. <do_search></do_search>
  4268. </menu>
  4269. </menus>
  4270. </itop_design>