Vairāk

ArcObjects .NET - kā aizvērt / atbrīvot FeatureClass, Workspace, Factory

ArcObjects .NET - kā aizvērt / atbrīvot FeatureClass, Workspace, Factory


Man ir ilgstošs process. Es vēlos novērst resursu noplūdi vai negodīgus datu bāzes savienojumus.

Procesa laikā es gribu to izdarīt:

  1. iegūstiet ArcSDE (Oracle) darbvietu rūpnīcu
  2. atveriet darbvietu no rūpnīcas (tajā brīdī es saņemu atvērtu datu bāzes savienojumu)
  3. iegūt darbvietā esošu funkciju klasi vai tabulu,
  4. vaicājiet objektu klasei vai tabulai, veiciet kursoru, veicot manu biznesu
  5. tad atlaidiet / aizveriet visu tādu:

    • Datubāzes savienojums un tabulas bloķēšana no ArcSDE / Oracle viedokļa (kā to atklāja kaut kas līdzīgs "sdemon -o info -I lietotāji" vai tabulas sde.table_locks vaicājums) ir aizvērts / atbrīvots.
    • process ir izturīgs pret ArcSDE / Oracle restartēšanu (tas ir, es neatstāju kaut ko piekārtu, kas nedarbosies vēlāk pēc nakts restartēšanas)
    • Tiek atbrīvotas visas RCW, COM atsauces un atmiņa.

Būtībā procesa ilgstošā rakstura dēļ Es vēlos būt patiešām pārliecināts, ka man nav resursu noplūdes vai negodīgu savienojumu, un mans process var izdzīvot ArcSDE / Oracle restartēšanas laikā.

Esmu redzējis šādas diskusijas:

Un tas, no kā es citēju

Katrā darbvietu rūpnīcā tiek uzturēts pašlaik savienotu, aktīvu darbvietu kopums, uz kuru atsaucas lietojumprogramma. Izsaucot kādu no iepriekš uzskaitītajām Open * metodēm, darbvietas rūpnīca pārbauda, ​​vai darbvieta iepriekš ir atvērta ar atbilstošu rekvizītu kopu. Ja tā, tiek atgriezta atsauce uz esošo instanci.

Tas viss man liek domāt, ka es vajadzētu izlaidums (piem., ComReleaser klase vai līdzvērtīga Marshal.ReleaseComObject () cilpa), iespējams, šādā secībā:

  • kursors
  • rakstura klase / galds
  • darbvieta
  • darbvietu rūpnīca

Tad notiek šādas diskusijas, kur cilvēki visu to dara, un varbūt pat apkaisa sistēmā System.GC.Collect (), un viņu datu bāzes savienojums joprojām dzīvo.

Ak, guru, kāda ir pēdējā tiešā dope?


Jūs savā ziņojumā jau esat apskatījis daudzus aspektus. Tomēr, lai izvērstu savu jautājumu, vienmēr ievērojiet šo modeli:

if (obj! = null) ESRI.ArcGIS.ADF.ComReleaser.ReleaseCOMObject (obj); obj = null;

Tad zvaniSystem.GC.Collect ()piespiest atkritumu savācēju noņemt visas atsauces uz DBVS.

Izlaišanas kārtībai jābūt Kursori, Funkcijas (IFeature), FeatureClasses, Darbvietas un citi ArcObjects.

ArcGIS Desktop un ArcEngine lietojumprogramma ir STA (viena pavediena programma). Nav ne droši, ne ieteicams lietot ArcObjects pāri pavedieniem (Workers); Lai to panāktu, var izmantot objektu serializāciju un deserializāciju. Lai iegūtu sīkāku informāciju, ieskatieties šeit.


Notiek COM klases rūpnīcas izgūšana komponentam ar CLSID neizdevās šādas kļūdas dēļ: 80040154

Es izveidoju Windows pakalpojumu, izmantojot C # .NET, lai ģenerētu PDF ziņojumu. Lai ģenerētu PDF failu, es izmantoju trešās puses dll. Lietojumprogramma darbojas manā Windows XP platformā. Izvietojot pakalpojumu Windows Server 2008 64 bitu versijā, es saņēmu šo kļūdu:

Neizdevās izgūt COM klases rūpnīcu komponentam ar CLSID <46521B1F-0A5B-4871-A4C2-FD5C9276F4C6> šādas kļūdas dēļ: 80040154.

Es reģistrēju DLL, izmantojot komandu regsvr32. Es varu redzēt šo CLSID reģistrā. Bet problēma joprojām pastāv.

Kāda varētu būt problēma?


ArcObjects .NET - kā aizvērt / atbrīvot FeatureClass, Workspace, Factory - ģeogrāfiskās informācijas sistēmas

ArcObject .Net ar VS 2013

Lūdzu, paņemiet šo krātuvi kā piezīmi, lai iepazītos ar AO iestatīšanu, atkļūdošanu un izstrādi.

1. nodarbība: iestatīšanas vide un atkļūdošana

Labi, sāksim savu pirmo AO projektu VS2013! Izvēlnes joslā: FILE - & gt New Project, pēc tam atvēršanas dialoglodziņa kreisajā rūtī atveriet koka struktūru, atrodiet Visual C # - & gt ArcGIS - & gt Desktop Add-ins - & gt ArcMap Add-in.

ArGIS pievienojumprogrammu vednī noteikti pārbaudiet opciju “Poga” sadaļā Papildinājumu veidi. Tas izveidos ArcMap pogas vadības veidni. Jums vajadzētu būt iespējai atrast cs failu ar nosaukumu "Button1.cs". Lūdzu, aizstājiet šo failu ar ieslēgtu šeit. Pirms mēs izveidojam pogu vadību, atveriet sava VS 2013 programmu Soultion Explorer, ar peles labo pogu noklikšķiniet uz projekta nosaukuma un izvēlieties rekvizītus. Vēlreiz pārbaudiet 2 vietas:

  1. Mērķa ietvaram sadaļā Lietojumprogramma jābūt ".NET Framework 4"
  2. Sadaļā Atkļūdošana pārliecinieties, vai “Sākt ārējo programmu” ir iestatīta kā ArcMap programma

Joprojām sadaļā Solution Explorer ar peles labo pogu noklikšķiniet uz Atsauces un izvēlieties "Pievienot ArcGIS atsauces". Lai izveidotu šo risinājumu, mums ir vajadzīgas šādas divas atsauces. Tie nav iekļauti šajā noklusējuma veidnē:

Tagad jūs esat gatavs izveidot risinājumu! Pirms jūs to darāt, ArcMap galā mums vēl ir jāveic daži mājturības darbi. Dodieties uz savu ArcMap instalācijas mapi, parasti tā atrodas: C: Program Files (x86) ArcGIS Desktop10.3 bin, atrodiet failu ar nosaukumu "ArcMap.exe.config". Atveriet to ar administratora privilēģiju. Tas ir XML fails, un meklējiet šo sadaļu, kas atrodas faila augšdaļā:

Pēc noklusējuma ArcMap ir konfigurēts darbam pret .Net Framework Runtime 2.0, kas ir pretrunā ar pogas vadību, kuru veidosim VS 2013. Komentējiet šo rindiņu un noņemiet komentāru no iepriekšējās rindiņas, lai iespējotu .Net Framework Runtime 4.0 ArcMap . Labi, tagad jums vajadzētu būt iespējai to izveidot bez problēmām. Lai pārliecinātos, ka nākamās sadaļas esam tajā pašā lapā, lūdzu, pārbaudiet failu "config.esriaddinx". Šo failu varat atrast sadaļā Solution Explorer. Lūk, kas man ir (es noņēmu nesaistītās sadaļas)

Tas dod mums labu kopsavilkumu par tikko izveidoto rīku. Tās nosaukums ir "ArcMapAddin1", un tā mērķis ir pret ArcMap 10.3, kas darbojas pret .Net Framework Common Lauguage Runtime 4.0. Šai pogas vadībai tika piešķirts paraksts "Mana poga" un tā tika klasificēta sadaļā "Pievienojumprogrammu vadīklas". Paturiet tos prātā, jums tie būs nepieciešami vēlāk.

Ja VS2013 mēs noklikšķināsim uz pogas "Sākt" ar zaļu bultiņu, jums vajadzētu redzēt, ka ArcMap tiek palaists. VS2013 veiks visus netīros darbus mūsu vietā: izsauks ArcMap 10.3 un pievienos atkļūdotāju savam procesam, ielādēs visus nepieciešamos simbolus no dažādām asamblejām, lai atvieglotu atkļūdošanu. Pēc tam mēs esam gatavi atkļūdot!

Jūs varat ievietot pārtraukuma punktu jebkurā avota rindā Button1.cs, bet nekas nenotiek, vai ne? Tas ir tāpēc, ka šī vadīkla ir lietotāja saskarnes sastāvdaļa, un lietotājam ir nepieciešams noklikšķināt uz tās, lai izsauktu jebkuru darbību. Tātad, kur ir mūsu poga? Tas nav lietotāja saskarnē! Nu, tas ir patiešām neērti, un ESRI var labāku darbu, atkļūdošanas laikā automātiski pievienojot pogu rīkjoslai.

Jebkurā gadījumā mums tas būs jādara manulāli. Jums būs jādodas uz Pielāgot - & gt pievienojumprogrammu pārvaldnieku, pateicoties ESRI, jums vajadzētu redzēt mūsu pogu sadaļā “Mani pievienojumprogrammas”! Nosaukumam jāatbilst nosaukumam config.esriaddinx, XML failam, uz kuru es lūdzu pievērst uzmanību.

Pēc tam cilnē Rīkjoslas noklikšķiniet uz pogas Pielāgot. Varat izveidot jaunu rīkjoslu, lai turētu mūsu darbu. Es izveidoju vienu ar nosaukumu "Monkeybar", jūs to varat nosaukt kā vien, tikai pārliecinieties, ka tas nedublēs esošos ArcMap. Pārslēdzieties uz cilni Komandas, kreisajā rūtī ir visas pieejamās kategorijas, vai atceraties to, ko es jums teicu atcerēties? Kategorijas nosaukums ir "Add-In Controls"! Noklikšķinot uz tā, labajā pusē, jums vajadzētu būt iespējai redzēt komandu "Mana poga".

Tagad jūs varat vilkt "Mana poga" uz jauno rīkjoslu! Nākamais solis būs dažu slāņu pievienošana kartē. Ātrākais veids, kā to izdarīt, ir pievienot bāzes karti, kas ieviesīs arī koordinātu sistēmu. Es izvēlējos ESRI World Topo. Tam ir tīmekļa Mercator projekcijas veids. Manu mxd failu varat atrast šeit

Tagad, noklikšķinot uz pogas (Pēc noklusējuma tā ir ar zilu apaļu ikonu), jums vajadzētu būt iespējai redzēt četrus sarkanus apaļus punktus, kas parādīti četros kartes stūros. Jums var būt nepieciešams pilnībā tuvināt, lai tos redzētu. Ja Button1.cs 59. rindiņā ievietojat pārtraukuma punktu un ArcMap noklikšķiniet uz mūsu pogas, izpilde tiks apturēta, un jūs varat soli pa solim atkļūdot Button1.cs avotu iekšā VS2013.

Jūs varat pamanīt, ka lielākā daļa Button1.cs loģiku ir ārpus OnClick funkcijas. Ko darīt, ja vēlaties atkļūdot kodu, teiksim, 33. rindā? Nu, šo funkciju sauc par "klases noklusējuma vadītāju", un tā tiek izsaukta tikai vienu reizi, kad katru reizi tiek noklikšķināts uz šīs pogas. Lai atkļūdotu tur esošos kodus, mums būs jāpārtrauc pašreizējā atkļūdošanas sesija, noklikšķinot uz sarkanā kvadrāta pogas VS 2013, pēc tam 33. rindiņā jāievieto jauns pārtraukuma punkts un jāsāk no jauna.

BTW, vai kāds var pateikt, ko nozīmē 36. līnija? Kam paredzēta sadaļa + = zīmes labajā pusē? Ja nezināt, ir pienācis laiks iet pāri C #, pirms pāriet uz nākamajām nodarbībām.

2. nodarbība: Iegūstiet smago darbu ārpus ArcMap

Kad Arcpy tika izlaists, viena no aizraujošākajām lietām ir tā, ka ĢIS lietotājiem ir atļauts veikt datu apstrādes darbu bez ArcMap atvēršanas. AO ļauj jums to darīt no pirmās dienas, jums vienkārši nepieciešams nedaudz vairāk programmēšanas :)

Šajā sesijā mēs izstrādāsim Windows komandrindas lietojumprogrammu, kas spēj darboties bez iesaistītas ArcMap (Tas nav pilnīgi taisnība: ja jums nav ArcEngine licences, jums joprojām sistēmā jābūt instalētai ArcMap lai iegūtu piekļuvi licencei). Jebkurā gadījumā aizvērsim acis un izliksimies, ka ArcMap šeit ir izslēgts no radara.

Lai izveidotu jautru lietu, es nolēmu spēlēt ar dažiem reāliem datiem no Lielo ezeru atjaunošanas datu bāzes. Izmantojot kartes saskarni, jūs varat lejupielādēt visus GLRD projektus csv formātā. Mēs uzskatīsim šo izgāztuvi par avota datiem. Katrā šī faila rindā ir projekta ieraksts ar lat / lon, kuru mēs varam pārveidot par punktu pazīmju klasi. Ja esat GISer, jūs, iespējams, esat to darījis simtiem reižu, jūs varat jautāt: kāda ir tā jautrība? Labi, pievienosim dažas jautrības: ja nu es vēlos iegūt tikai Mičiganas štata projektu? Nu, ja jums joprojām ir problēmas atrast vietu, kur lejupielādēt šo csv failu, lūdzu, noklikšķiniet šeit.

Atgriezīsimies pie VS2013. FILE - & gt Project, kreisajā rūtī, kas atrodas jaunā projekta logā: Instalēts - & gt Templates - & gt Visual C # - & gt ArcGIS, ja noklikšķināsit uz "Paplašinot ArcObjects", centrālajā rūtī tiks parādīta visa pieejamā veidne, lūdzu, izvēlieties "Console Application ( Darbvirsma) ". Jums vajadzētu redzēt "ArcGIS Project Wizard" parādīšanos, pirmajā lapā mēs visu saglabāsim kā noklusējumu un noklikšķiniet uz "Next". Pēc tam jums būs jāizvēlas ESRI produktu licences veids, lai programma zinātu, kādus komponentus var iebūvēt jūsu programmā. Es izvēlējos "Advanced", pēc tam noklikšķiniet uz Pabeigt, lai ielādētu veidni.

Atverot "Solution Explorer", jums vajadzētu redzēt divus ESRI izveidotus cs failus. Lūdzu, aizstājiet “Program.cs” ar šo. Atkal, pirms izveidojat programmu, jums būs jāpievieno daži papildu ieteikumi. Vai atceraties "ArcGIS Project Wizard" pirmo soli? Es pārliecināju jūs to izlaist, jūs faktiski varētu ielādēt tur papildu atsauces.

1.ESRI.ArcGIS.Version 2.ESRI.ArcGIS.Geodatabase 3.ESRI.ArcGIS.Geometry

Tagad jums vajadzētu būt iespējai izveidot programmu. Šis rīks ir paredzēts darboties komandrindā ar diviem argumentiem:

C: DesktopConsoleApplication1.exe glrd.csv michigan

Pirmais arguments ir ceļš uz tikko lejupielādēto csv failu, otrais ir štata nosaukums. Ja neizdodas ievadīt šos divus argumentus, programma nekavējoties tiks pārtraukta. Tad jūs varat jautāt: kā es varu iestatīt šo modeli VS2013? Solution Explorer ar peles labo pogu noklikšķiniet uz projekta un pēc tam dodieties uz "Properties", sadaļā Atkļūdošana ievietojiet argumentus komandrindas argumentos. To darot, katru reizi, kad atkļūdojat programmu, tajā tiks ievietoti jūsu ievietotie materiāli.

Šī ir "atsevišķa" lietotne, un mēs pievērsīsimies kodam. Kodā tiek veikti divi uzdevumi:

  1. Parsējiet Excel csv failu, izmantojot SQL vaicājumu
  2. Izveidojiet failu Ģeodatu bāze un aizpildiet to ar punktu ģeometriju un atribūtiem

Pirmais uzdevums ir nepieciešams, ja mums vispirms ir jāfiltrē saturs. Par manu izveidoto lietu mēs vēlētos uzzināt tikai projektus vienā Lielo ezeru štatā. Mēs to panācām 33. līnijā, izmantojot OleDbCommand pret Excel. Microsoft piedāvā ļoti veiklu pieeju Excel datu manipulēšanai, izmantojot SQL priekšrakstu. Es to ļoti iesaku jūsu programmēšanas darbā.

Ja mēs atradīsim pozitīvu projektu skaitu valstij, mēs varam turpināt tos ievietot ģeodatu bāzē. Lūdzu, pievērsiet uzmanību šī procesa plūsmai:

  1. Iegūstiet rūpnīcu, kas spēj izveidot uz failiem balstītu ģeodatu bāzi, skatiet 135. rindiņu.
  2. Izveidojiet jaunu funkciju klasi 147. rindā.
  3. Saistiet projekta ierakstus, izveidojiet jaunu funkciju un pēc tam ievietojiet tos funkciju klasē, izmantojot FeatureBuffer un FeatureCursor, kas ir ieteicama lielapjoma ievietošanai. Skatiet 156. rindiņu. Kad cilpa ir pabeigta, izskalojiet kurosru, lai visus ierakstus ierakstītu atpakaļ diskā.

Izveidojot funkciju klasi, jums būs jādefinē:

Šī ir diezgan standarta procedūra. Esmu pārsteigts, ka ESRI tam nav fragmenta vai koda parauga. Es to atrodu tikai ESRI github kontā. Ņemiet vērā, ka paraugs izmanto "esriDataSourcesFile.TextFileWorkspaceFactory", kas atbrīvoja programmētāju no tiešas csv faila apstrādes. Tomēr brīvība vienmēr rodas no sistēmas izpratnes. Izmantojot manis ieviesto pieeju, jums tagad ir lielāka elastība, lai tiktu galā ar Excel failu.

Pirms apkopojam, atgriezīsimies noklusējuma veidnē, ko mums piedāvā ESRI:

Šīs ir procedūras, lai inicializētu ESRI komponentus, ieskaitot licencētus, un pēc tam visu izslēgtu. Kods, kurā ir ietverta ESRI informācija, ir jāraksta pa vidu.

Pirms atlaižam, vai jūs, lūdzu, apskatītu funkcijas ParseCSV parakstu, ko nozīmē Saraksts & ltdynamic & gt? Ja jūs uzmanīgi izlasāt kodu, kāda veida materiālus mēs iemetam sarakstā 38. rindā? Atkal, ja jums nav ne mazākās nojausmas, ir jāatjaunina jūsu C # zināšanas!

Labi, mēs visi esam pabeiguši. Lai spēks būtu līdz nākamajai reizei!

3. nodarbība: ArcObjects vai ArcPy, būt vai nebūt

Pirmkārt, es nedomāju šeit veidot svētu karu. Viņi abi ir lieliski! Es tikai vēlos ilustrēt atšķirību starp AO un AP konkrētā gadījumā. Cerams, ka neatkarīgi no tā, vai esat AO vai AP atbalstītājs, tas varētu būt noderīgi, lai izvēlētos pareizo rīku pareizajam uzdevumam.

Vispirms aprakstīsim uzdevumu: ja datorzinātņu kontekstā jūs esat pazīstams ar grafiku kā datu struktūru, jūs varat zināt, ka tā ir pamatstruktūra jebkura veida darbību veikšanai, piemēram, tīkla izsekošana, īsākais ceļš, maksimālā plūsma utt. Ņemot vērā iepriekš sagatavotu datu kopu NHD Plus for Great Lakes faila ģeodatu bāzes formātā, mēs vēlētos izveidot diagrammu tās blakus esošajā saraksta formā. Rūpīgi izpētot ģeodatu bāzi, mēs noskaidrojām, ka ir divas funkciju klases, kas ir īpaši noderīgas šim uzdevumam: NHD_Flowline un Hydro_Net_Junctions. Kā jūs zināt, NHD Plus ir datu kopa, kas tika apstrādāta un izveidota, izmantojot Stream Network, izmantojot ESRI tehnoloģiju. Tomēr ESRI ģeodatu bāze ir īpašumtiesības, tāpēc mēs nevaram izmantot esošo datu priekšrocības, lai izveidotu mūsu blakus esošo sarakstu (es šeit mazliet pārspīlēju, jo ESRI patiešām nodrošina atvērtā koda C ++ bibliotēku, lai manipulētu ar failiem balstītu ģeodatu bāzi).

Izmantojot šīs divas funkciju klases, mēs varētu paveikt savu darbu, izmantojot ArcPy diezgan vienkārši. Šeit ir kods. Iespējams, pamanīsit, ka skripts ģeodatu bāzes vietā izmantoja shp failu. Es nemeloju, man šeit ir versija, kas izmanto Geodatabase. Ja jūs strādājat pie mana darba devēja, jums vajadzētu to apskatīt. Ja iestatīsit šo skriptu darbvirsmā ar instalētu ArcMap 10.3 un gatavu NHD Plus for Great Lakes (dariet man zināmu, vai jums ir nepieciešams testā izmantotais 'NHDPlusV21_GL_04.gdb'), iespējams, ka tas var aizņemt līdz 6 līdz 12 stundas, lai pabeigtu. Varu derēt, ka jūs arī pamanīsit, ka vājās vietas ir šeit un šeit.

Vai mēs varam tur kaut ko uzlabot? Par nožēlu, mēs patiešām neko daudz nevarējām darīt, jo ESRI ArcPy pakļāva tikai ierobežotas funkcijas, galvenokārt ģeoprocesēšanu, izmantojot visu, kas atrodas ArcMap rīkjoslā. Citiem vārdiem sakot, visi jūsu ArcPy skripti veic vienu lietu: jebkura rīku skaita kombinācija, ko ESRI piedāvā ArcMap. Jums patiešām ir 64 bitu ietilpība, taču šajā gadījumā nav daudz palīdzības, kas, visticamāk, ir saistīta ar procesoru.

Apgriezīsim monētu un pārbaudīsim otru pusi: ArcObjects. Net, šis ļaunais ArcObject for Visual Basic pēctecis nodrošina plānas kārtas iesaiņojumu virs ArcObjects COM un domājams, ka varēs piekļūt visiem ESRI tehnoloģiju aspektiem, ja jums ir iegādāta pareiza licence. Lai spēlētu godīgi, mēs ievērosim to pašu metodiku, ko izmanto ArcPy. Mēs uzskatām, ka mums varētu būt labāk izpildīts C # skripts, izmantojot AO, pamatojoties uz faktu, ka AO programmēšanas ziņā piedāvā precīzāku precizitāti nekā AP. Pārtraucot šīs divas vājās vietas un nonākot slānī dziļāk AO iekšpusē, mēs varam kaut ko mainīt.

Pirmkārt, vispirms izskaidrosim garlaicīgo daļu: šeit ir divi POCO, kas pārstāv mezglu un tā padotājus:

Virsotni kā mezglu izmanto, lai izsekotu mezgla Id, ienākošo straumju skaitu un vissvarīgāk: pakārtotie mezgli, kas saglabāti sarakstā. DownstreamNode klasē ir mezgla ID, ienākošās straumes ID un vissvarīgākais: ātruma dati sarakstā (mūsu sākotnējā doma ir izmantot šo ātrumu, lai aprēķinātu ceļa laiku pa straumēm).

C # skriptā mums jāatver uz failiem balstīta ģeodatu bāze un jāsaņem atsauces uz objektu klasēm, kuras mēs vēlētos pārbaudīt:

Tā kā tagad mums ir funkciju klases, mēs esam gatavi risināt telpiskos vaicājumus, kurus parasti ArcPy veic ar trim koda rindiņām:

Trešā rinda "arcpy.SelectLayerByLocation_management" ir atslēga. Tā kā mums būs jākontrolē katrs savienojuma punkts pret NHD_Flowline slāni (viens punkts pret visām līnijām), mums ir aizdomas, ka "SelectLayerByLocation_management" konstrukcijas dēļ var būt neefektīva. "SelectLayerByLocation_management", iespējams, ir ieprogrammēts šādi:

  1. Veidot telpisko indeksu uz NHD_Flowline
  2. Meklējiet rādītājā, izmantojot norādīto punktu, un atrodiet visus kandidātus, kas dzīvo polilīniju apakškokā
  3. Lineāra skenēšana visiem kandidātiem pret doto punktu, izmantojot ģeometriskos operatorus, lai izslēgtu kļūdaini pozitīvu
  4. Atgriezt rezultātu kopu

Iespējams, ka pirmo soli, indeksu, var atjaunot katru reizi, kad izsaucam "arcpy.SelectLayerByLocation_management", kas ir atkritumi. Ko darīt, ja mēs to izveidosim vienu reizi un visiem punktiem izmantosim to pašu indeksu? Man teica, ka AO telpiskais vaicājums jāveic, izmantojot:

Es neesmu pārliecināts, kā tas tika ieviests, taču tas patiešām izskatās tuvu vietnei "arcpy.SelectLayerByLocation_management". Tātad, es nolēmu iet citu ceļu: "IFeatureIndex" un "IIndexQuery2", kas šķiet daudzsološi, dodot mums precīzāku mēroga kontroli. Šeit ir mans kods:

Mēs izveidojam FeatureIndex coclass un lūdzam to izveidot telpisko indeksu pret norādīto iezīmju klasi (šķiet, ka FeatureIndex faktiski izveido indeksu failu sistēmā, es domāju, ka tas varētu izmantot ģeodatu bāzes iekšējā indeksa priekšrocības.) Un tad mēs to nododam IIndexQuery2, kuram ir metode ar nosaukumu IntersectedFeatures. Ja mums ir taisnība, tas veiks iepriekš minētās darbības no 2 līdz 4.

Mēs varam viegli salikt kodus kā ESRI konsoles lietojumprogrammu, izmantojot C #, labi, ja jūs sekojāt manām iepriekšējām apmācībām. Viena lieta, ko ir vērts pieminēt, ir aprēķināt līnijas ģeodēzisko garumu ar lon / lat koordinātām. ArcPy atkal ir nepieciešama tikai viena koda rindiņa:

Jūs domājat, ka tam vajadzētu būt tik vienkāršam. Turiet domas, uzziniet, kā tas tika darīts AO, ņemot vērā, ka polyLine ir IPolyline:

Atvainojiet, nejautājiet man, kā šeit varētu darboties noklusējuma LinearUnitClass instance. Tas ir pietiekami netīrs. Es turēju domu, lai tur ievietotu savu Haversine kodu, jo es ticu, ka ESRI ir labāks risinājums netālu no Ziemeļu / Dienvidpola. Tev tam jānotic! :) Atkal, man teica AO guru, ka šis ģeodēziskais garums polilīnijā jāveic segmentu līmenī, izmantojot atšķirīgu metodi. Es tik daudz nerakāju: es faktiski apzināti padarīju savu C # kodu mazliet netīru, es pat mēģināju izmantot Linq, bet C # Linq ir bāls, salīdzinot ar Python saraksta izpratni. Tā kā es zinu: C # CLR pret COM uz Windows platformas noteikti būs ātrāks nekā Python, nemaz nerunājot par ArcPy ir iesaiņojuma iesaiņojuma augšpusē.

Ja jūs varētu veiksmīgi sastādīt kodu, nesteidzieties to palaist, pagatavojiet tasi kafijas un turiet rokās savu iecienīto grāmatu, pēdējais ArcPy skripts prasīja stundas! Nu, klēpjdatorā man patiešām bija laiks iedzert tasi kafijas un tiešsaistē lasīt dažus jaunumus, tomēr pārsteidzoši, ka šī AO versija tika pabeigta 15 minūtēs! Mana matemātika ir slikta. Vai kāds var pateikt, cik reižu šī ir ātrāka par AP versiju?

Es atkal negribu pierādīt, ka AO ir labāks par AP, vai pārliecināt jūs pāriet uz AO. Es vēlos dot visiem iespēju atjaunināt jūsu zināšanu bāzi un domāt ārpus izvēles! Iespējams, ka jūs zaudējat veiktspējas izjūtu, baudot mazāk ArcPy koda rindiņu. Man patīk ArcPy, es patiešām to daru, bet daudzos scenārijos man šķiet, ka es valkāju pusaudžam paredzētu T-shrit. Tātad, mans padoms ir šāds: ja jums patiešām rūp veiktspēja vai jūtat, ka ArcPy jums ir bijis pārāk lēns, varat apsvērt iespēju izmantot ArcObject, kas parasti jūs nepievils, vismaz ne šoreiz mūsu testēšanas gadījumā. :)

Es zinu, es zinu, mums vajadzētu apspriest ArcObject, nevis ArcPy. Tomēr iepriekš vietnē "ArcObject .Net with VS 2013". (labi, mēs neesam seriāls :), mani pārsteidza veiktspējas pieaugums, pārejot no ArcPy uz ArcObject. Es domāju, ka varētu būt vērts veikt kādu izmeklēšanu par ArcPy, tā ieviešanu un iespējām. Ja neplānojat apgūt ArcPy, lūdzu, ignorējiet šo nodaļu.

ArcPy pirmo reizi tika ieviests 2010. gadā ar ArcGIS 10 realse (labi, tas patiešām ir jsut 9.4, bet, nosaucot to par 10, tas izklausījās jaunāks.). Patiesībā bija "arcgisscripting" atpakaļ uz ArcGIS 9.2, tas atbalstīja ne tikai Python, bet arī citas skriptu valodas, piemēram, VBScript, Perl. Tomēr drīz pēc tam, kad Microsoft pārtrauca atbalstu VB, VBScript, Jscript, ESRI izdarīja lēmumu nomest visus skriptus, izņemot Python. Tas bija paredzēts, lai nodrošinātu skriptu iespējas tikai ģeogrāfiskās apstrādes uzdevumos. Ģeoprocesēšanas rīkkopa tika debitēta ArcMap 9.2. Tas tika izstrādāts, lai vienkāršotu noteiktus datu apstrādes darbus:

  1. Analīzes rīkkopa
  2. Kartogrāfijas rīkkaste
  3. Reklāmguvumu rīkkopa
  4. Datu pārvaldības rīkkopa
  5. Rediģēšanas rīkkopa
  6. Ģeokodēšanas rīkkopa
  7. Lineāro atsauču rīkkopa
  8. Daudzdimensiju rīkjosla
  9. Telpiskās statistikas rīkkopa

ArcPy katra ArcMap ģeogrāfiskās apstrādes funkcija ir definēta kā funkcija ArcPy moduļos. Punktu objektu klases konteksta korpusu varat ģenerēt ar šādām divām koda rindām:

Funkcija "MinimumBoundingGeometry_management" ir līdzvērtīga rīkam "Minimum Bounding Geometry", kuru var atrast ArcMap- & gt Toolbox - & gt Data Management. ArcPy vienkārši automatizē šo rīku, ļaujot lietotājam programmatiski nosūtīt šī rīka parametrus. Pēc otrās skatīšanās, iespējams, pamanīsit, ka visas funkcijas ievēro samae nosaukšanas konvenciju:

toolname + '_' + toolbox aizstājvārds

Ja neesat pārliecināts par konkrēta rīkjoslas aizstājvārdu, ar peles labo pogu noklikšķiniet uz rīkjoslas un pēc tam uz rekvizīta.

Saskaņā ar ESRI emuāru, šeit ir paredzēts ArcPy mērķis:

"ArcPy ir vietnes pakete, kas balstās uz veiksmīgo arcgisscripting moduli (un ir tā pēctecis). Tā mērķis ir izveidot stūrakmeni noderīgam un produktīvam veidam, kā veikt ģeogrāfisko datu analīzi, datu konvertēšanu, datu pārvaldību un karšu automatizāciju. ar Python. "

Pirmajā ArcPy izdevumā, izņemot ģeoprocesēšanu, tas nodrošina arī pāris citus moduļus: Kartēšana (arcpy.mapping), Telpiskā analīze (arcpy.sa) un Geostatistical Analyst (arcpy.ga). 10.1. Gadā tika ieviesta piekļuve datiem (arcpy.da) un laiks (arcpy.time). Tas ietver arī dažas citas bibliotēkas / utilītus.

Kā mēs visi zinām, visu ESRI produkcijas pielāgošanu var veikt, izmantojot ArcObject, un ArcObject tika izstrādāts, pamatojoties uz Microsoft COM pret Windows sistēmu. Piemēram, ģeoprocesēšanas rīku izspiešanas līdzeklis ir GPDispatch coclass (koklases definīcija). Tas tikai ļauj lietotājam nosūtīt arugus ar virkni un patērēt jebkuru rezultātu, kuru saskarne atgriež. Tāpēc ESRI to sauc par "rupji graudainu objektu", skatiet šeit. Tomēr ArcPy šīs saskarnes augšpusē īsteno savas ģeoprocesūras funkcijas. Kā norādīts kādā no ESRI dokumentiem, ArcPy ir arī rupjākas formas modelis.

"Arcpy.mapping tika izveidots profesionālam ĢIS analītiķim (kā arī izstrādātājiem). Tradicionāli iepriekš uzskaitītie scenāriji bija jāizdara, izmantojot ArcObjects, un tas vidējam ĢIS profesionālim bieži izrādījās ļoti grūti apgūstama programmēšanas vide. Arcpy.mapping ir kursera detalizēts objektu modelis, kas nozīmē, ka funkcijas ir veidotas tā, ka viena arcpy.mapping funkcija var aizstāt daudzas ArcObjects koda rindas. "

Tādēļ jūs varētu viegli paveikt kādu apbrīnojamu lietu, izmantojot ArcPy, tikai pāris koda rindiņās:

Iepriekš minētie kodi visas mxd funkcijas, izmantojot mxd definēto konfigurāciju, renderēs uz pdf failu.

Jūs varētu jautāt: vai mums ArcPy būtu jāuzskata par ArcObject aizstājēju? Tomēr saskaņā ar ESRI:

"Arcpy.mapping nav ArcObjects aizstājējs, bet gan alternatīva dažādiem tā atbalstītajiem scenārijiem. ArcObjects joprojām ir nepieciešams sīkākai izstrādei un lietojumprogrammu pielāgošanai, savukārt arcpy.mapping ir paredzēts esošo karšu dokumentu un slāņa satura automatizēšanai. failu. "

Varat arī zināt: vai ArcPy spēj tieši izsaukt ArcObject? Atbilde ir NĒ. Bet, es esmu pārliecināts, ka ArcPy joprojām kaut kā sazinās ar ArcObject netieši, netieši. Kā vienmēr, "zinātkāre nogalināja kaķi". Es mazliet atvēršu ArcPy pārsegu un redzēšu, kas tur atrodas. Manā darbvirsmā ArcPy tika instalēts:

C: Program Files (x86) ArcGIS Desktop10.2 arcpy arcpy

Tur jūs atradīsit klasisko python moduļa pakotnes struktūru. Tur ir apakšmape ar nosaukumu "arkobjekti", vai esat pārliecināts? Esmu pārliecināts, ka ne. Tātad, atvērsim dažus py failus. Klase "MapDocument" ir definēta vietnē _mapping.py. Klases deklarācija ir šāda:

Ja jums ir zināms C # vai Java, jūs varētu uzskatīt "mixins" par interfeisu. MapDocument nav definēts precīzi definēts konstruktors, tāpēc saskaņā ar Python's Method Resolution Order (MRO, vispirms dziļums pirms 2.3 un C3 algoritms pēc tam, jūs varētu pārbaudīt MRO darbību pēc klases.mro (), tā bāzes klašu konstruktoriem tiks izsaukta:

Šķiet, ka MapDocumentMethods izsauc savas bāzes klases tajā tieši, ja super () faktiski atgriež savu pamatklasi. Tomēr, tā kā mums šeit ir darīšana ar vairākkārtēju mantošanu, super (MapDocumentMethods, self).tajā(mxd) faktiski piesauc MapDocument otrās bāzes klases konstruktoru: "_BaseArcObject". Ja vēlaties uzzināt vairāk par super izdomāto uzvedību, lūdzu, noklikšķiniet šeit. Apskatīsim _BaseArcObject:

Tam ir konstruktors, kas spēj ņemt mainīga garuma ievades argumentus. Tas arī definē statisko dalībnieku mainīgo "_arc_object". Funkcija "gp._gp.CreateObject" faktiski tiek definēta nosaukuma telpā "ģeoprocesēšana". Atcerieties, ka mēs pieminējām, ka ģeogrāfiskā apstrāde ir pirmais ArcPy ieviestais modulis? Attiecībā uz gp tas ir klases ģeoprocesora gadījums:

Tagad mēs esam sasnieguši izcelsmi: ArcPy sazinās ar ArcObject, izmantojot "arcgisscripting", kurš ir ArcPy priekštecis. ArcPy mapē jūs neatradīsit arcgisscripting, tas faktiski atrodas "C: Program Files (x86) ArcGIS Desktop10.2 bin" ar nosaukumu "arcgisscripting.pyd", kas faktiski ir DLL.

Kā mēs apspriedām iepriekšējā un šajā nodaļā, sadarbspējas ar COM dēļ jums vajadzētu sagaidīt zināmu veiktspējas zudumu, ja izmantojat ArcPy, nevis ArcObject. Tas, cik daudz zaudējumu jūs varat saņemt, ir atkarīgs no uzdevumiem. Šeit ir etalons, kuru es internetā salīdzinu ar ArcGIS 9.3. @dbGLC man atgādināja, ka šī grafika tika ņemta no presnetation, kurā tika apspriesta iespēja AO COM izsaukt tieši, izmantojot Python, izmantojot dažas Python COM paketes, piemēram, comtypes. Sākotnējais diskusiju pavediens ir šeit. Tur jūs varat atrast daudz izcilu ideju.

Atkal šī nodaļa ir paredzēta, lai palīdzētu jums saprast, kas ir ArcPy. Gan ArcObject, gan ArcPy ir lieliski rīki dažādiem scenārijiem. Ja vēlaties uzzināt vairāk par ArcPy, es šeit iesaku ESRI repo vietnē github. Ļaujiet man zināt, vai jūs varat atrast dārgu ģeoprocesēšanas funkciju, ko sauc par milzīgu cilpu. :)

5. nodarbība: ArcObjects objekta modeļa diagramma (OMD)

Ja esat pieredzējis AO izstrādātājs, neatkarīgi no tā, vai dodat priekšroku VBA, VB, VB.Net, C #, Java vai C ++ (sakārtots pēc popularitātes :), jūs dažreiz izmantojat šīs diagrammas, lai vismaz meklētu mērķi. Nu, ja jūs esat AO iesācējs, tāpat kā es, jūs varat sajust, ka es biju pārspīlēts. Es tevi nevainošu, jo arī es tā domāju. Tomēr, tiklīdz jūs nopietni sākat ieviest funkciju, izmantojot AO, šīs diagrammas būs jūsu visaugstākais ierocis, it īpaši pēc pāris laika izšķērdēta google meklēšanas. Nav joku, es vienmēr jokoju ar saviem kolēģiem: vecākais izstrādātājs ir tas, kurš varētu atrisināt tehnisko mīklu, uz kuru meklētājprogrammas neatbild. Diemžēl ArcObjects šajā kategorijā ietilpst vairāk nekā citas tehnoloģijas! Divi iemesli: 1. AO ir salīdzinoši maza lietotāju grupa. 2. ESRI paveica ļoti sliktu darbu, lai uzturētu izstrādātāja API dokumentāciju. Es maksāju 1500 USD gadā par EDN abonementu, bet es joprojām jūtos bezpalīdzīgs biežāk, nekā gaidīju.

Cilvēki vienmēr mācās no savām mācībām (labi, kāds tomēr iekrīt vienā upē vairāk nekā vienu reizi). Pēc pāris nomākta pieredzes ar Google un EDN dokumentiem es pēkšņi atcerējos laiku, kad biju jauns: es redzēju tos AO gurus, kas stāv un rēgojas milzīgas tāfeles priekšā, uz kuras ir pavirši pāris pēdu garu diagrammu. Es atcerējos diagrammu, uz kuru viņi skatās, un to sauc par AO objekta modeļa diagrammu, aka OMD (Ak, mans dārgais)! Pagaidiet minūti, kur ir mani mīļie? Manā darbvirsmā tie atrodas:

C: Program Files (x86) ArcGIS DeveloperKit10.4 Diagrammas

Šajā mapē ir 68 pdf faili, un iepriekšējai AO versijai bija daudz mazāk. Ja esat amatieris tāpat kā es, es vispirms iesaku izlasīt GeoDatabaseObjectModel.pdf. Tas satur lielāko daļu lietu, kas jums var būt nepieciešama, lai sāktu AO programmēšanu. Apskatīsim kopā!

Pirmkārt, jums ir jāsaprot, ka ESRI ir sirsnīgs UML sekotājs. Visi dīvainie simboli, kurus jūs varat redzēt, faktiski ir iegūti no UML klases diagrammām ar kādu ESRI izgudrojumu. Šeit ir laba atsauce uz UML klases diagrammu. Ja jūs nevēlaties tērēt 3 minūtes, lai iepazītos ar šiem jēdzieniem un sabiezinātajiem sibīļiem, ESRI katrā diagrammā ir UML 101.

ESRI patiešām izdarīja savu izgudrojumu. Kas ir ienākošais interfeiss un izejošais interfeiss? Pat pēc tam, kad es paņēmu UML klasi pilnam semestrim, nav ne jausmas par to, kas viņi varētu būt! Neuztraucieties, ESRI piedāvā paskaidrojumus savā sērijā "Learning ArcObjects", kas ir pieejams tiešsaistē un bezsaistē katram izlaidumam. Šeit ir charpter: OMD lasīšana. Tagad jūs, iespējams, zināt, ka ienākošais interfeiss ir interfeiss, ko noteiktā klase faktiski īsteno, izejošais interfeiss faktiski ir notikumu reģistrs, ESRI to sauc par notikumu izlietni. Tas ir vecās skolas triks, lai reģistrētu savu pasākumu vadītāju. Ja jūs esat tikpat naivs kā es, jūs varat to vienkārši uzskatīt par notikumu .Net kontekstā.

Vai atceraties, ka jau iepriekš minēju, ka šie guru, izmantojot ploteri, izdrukāja tik lielu ORM kā maza mēroga karti? Kāpēc? Atverot GeoDatabaseObjectModel.pdf, tas ir tas, ko jūs varat redzēt labi, ja vien jums nav īpaši liela LED televizora kā ekrāna:

Tagad jūs zināt, kāpēc ploteris ir vajadzīgs, vai ne :)

Ja zināt interfeisu, kas jūs interesē, vienmēr ir ērti tieši meklēt atbilstošo OMD. Pretējā gadījumā jūs jūtaties, ka spēlējat paslēpes.

Labi, spēlēsim paslēpes spēli. Šis ir darījums: es gribētu atvērt uz GeoDatabase balstītu failu un iegūt tajā informāciju par funkciju klasēm. Ja esat programmētājs, jūs varat zināt, ka faila atvēršana no diska parasti izmanto dažas funkcijas, piemēram, "atvērts" vai "atvērts fails" utt. Tā kā mēs esam OOP, bija klase, kurā mēs varam izmantot šo funkciju. Pirms jūs ienirstat manā mīļā okeānā, es satveru jūsu rokas un saku: pagaidiet minūti, vēl viena lieta, kas man jāpiemin: trīs suriviālie noteikumi spēlēšanai ar Maniem dārgajiem (OMD):

Es. Interfeisa izsekošanas laikā vienmēr tiek sasniegta saskarne, kas ievieš IUnknown, un jūs zināt, ka tās ir beigas. Ievērojiet, ka es izmantoju workd "interfeisu", nevis klasi? AO ir veidots virs Microsoft COM standarta. Būtībā ir teikts, ka katrs funkcijas izsaukums jāveic pret kāda veida saskarnes gadījumu. Pēc protokola katrai saskarnei, kas definēta COM domēnā, jāievieš interfeiss IUnknown. Neuztraucieties, kas atrodas IUnknown, nezināt to nav slikta ideja. Viss, kas jums jāzina, ir tas, ka tas ir strupceļš, tiklīdz mēs redzam OMD saskarni, kas tieši ievieš IUnknown. Mēs esam sasnieguši OMD hierarhijas augstāko līmeni.

WorkspaceFactory ir klase, kas ievieš IWorkspaceFactory, kas ir ienākošais interfeiss un ievieš IUnknown. Tas mums norāda, ka IWorkspaceFactory ir augstākā līmeņa saskarne.

II. Piekļuve interfeisā definētajām funkcijām vienmēr notiek ar noteikta veida klases gadījumiem. Šis klases tips ir vai nu Coclass, vai "instantible" klase, kas ir klases tips, kuru tā instanci var iegūt tikai caur citām klasēm. Tas varētu nozīmēt izgūšanu no rūpnīcas, singltona vai augšupielādes. Kā piemēru joprojām izmantosim WorkspaceFactory.

Programmā .Net WorkspaceFactory OMD tiek ieviests kā divas vienības: saskarne "WorkspaceFactory" un klase "WorkspaceFactoryClass", kas ievieš saskarni "WorkspaceFactory" kopā ar citām saskarnēm, kuras WorkspaeFactory būtu jādara saskaņā ar OMD. "WorkspaceFactory" ir tukša saskarne, iespējams, darbojas kā vietturis. Kāpēc? Es nezinu. Ja zini, lūdzu, paziņo man :)

Pēc dekompilācijas mēs varam pateikt, ka WorkspaceFactoryClass konstruktors ir ar piekļuves modifikatoru "iekšējs", kas nozīmē, ka tam var piekļūt tikai montāžas iekšpusē. "extern" nozīmē, ka šis konstruktors ir ieviests kaut kur citur. Atribūts MethodImpl, kas saistīts ar konstruktoru, tiek piešķirts ar MethodImplOptions.InternalCall, kas norāda "zvans ir iekšējs, tas ir, izsauc metodi, kas tiek ieviesta kopīgās valodas izpildlaikā." Tas viss nodrošina, ka mēs savā kodā nevaram izveidot WorkspaceFactoryClass instanci. Tāpēc WorkspaceFactoryClass kvalificējas kā "tūlītēja" klase.

OMD, abstraktā klase, tūlītēja klase un kokase ir viegli identificējama pēc taisnstūra formas. Abstraktā klase ir 2D ēnots taisnstūris, tūlītēja klase ir 3D taisnstūris bez ēnas, kokklase ir 3D ēnots taisnstūris.

III. Tā kā šīs klases parasti ievieš vairākas saskarnes. Tas ir ļoti tipiski redzēt AO kodā, lai piekļūtu D saskarnē deklarētajai metodei, kas tiek ieviesta C klasē, vispirms ir jāiegūst A klases eksemplārs, pēc tam tas jāpārvieto uz B interfeisu, izmantojot "as". Tā kā C klase īsteno gan saskarni B, gan saskarni D, tagad visu, kas jums ir rokā, jūs metat no B līdz D.

Tagad jūs varat nirt! Vienīgais pavediens, kas mums ir, šķiet, ka visām datu kopām var piekļūt, izmantojot Abstract Factory dizaina modeli. Tā kā mēs vēlētos atvērt uz failiem balstītu GDB, FileGDBWorkspaceFactory atrodu vietnē DataSourcesGDBObjectModel.pdf

Tam ir aizēnots 3D taisnstūris, tāpēc mēs varētu tieši inicializēt FileGDBWorkspaceFactory gadījumu vai izveidot šādu lietu, izmantojot atstarotāju. Tam ir ienākošā saskarne: IWorkspaceFactory, un šī saskarne ir aprakstīta vietnē GeoDatabaseObjectModel.pdf. Skatiet iepriekšējo attēlu, tam ir funkcija ar nosaukumu "OpenFromFile ()", kuru mēs sagaidām. Šī metode atgriež IWorkspace saskarni, skatiet tālāk redzamo diagrammu:

Ievērojiet, ka tas īsteno IFeatureWorkspace, jo mēs meklējam līdzekļus, lai piekļūtu informācijai par klases klasēm, tas šķiet interesanti. Labi, tam ir divas metodes: OpenFeatureClass un OpenFeatureDataset. Pirmais ir paredzēts piekļuvei Featureclass, ja iezīme klases aizstājvārds ir zināms priekšā, bet pēdējais, savukārt, ir paredzēts iezīmju klases piesaistīšanai Featre klasē datu kopa, ja objektu klases nosaukumi nav zināmi, bet tiek norādīts objektu klases datu kopas nosaukums.

Pārbaudot FeatureDataset delarāciju, IFeatureClassContainer interfeiss nosaka veidu, kā piekļūt IFeatureClass caur indeksu, kas ir tieši tās funkcijas, kuras mēs ceram veikt visās funkciju klasēs faila GDB iekšpusē. Zemāk ir kods, kas parāda šo procesu. Šī ir tieša kopija no mana projekta, kas prasa izstrādāt valsts uzņēmumu.

Es ceru, ka šis piemērs ir pietiekami vienkāršs, lai dotu jums priekšstatu par OMD lietošanu. Ja godīgi, es neesmu pārliecināts, vai šeit esmu paveicis labu darbu. Tātad, ja es to nedarīju, lūdzu, dariet man to zināmu. :)

6. nodarbība: ArcGIS servera objekta paplašinājums (SOE) un ģeoprocesēšanas rīks ##

Kādu laiku nav bijis čačas, lai atjauninātu šo sēriju. Es šeit nokopēju / ielīmēju dažas piezīmes, kuras izveidoju mūsu projektam. Pēc manas personīgās pieredzes, abas šīs servera puses attīstības pieejas ir noderīgas, lai gan SOE, šķiet, ir populārāka un spējīgāka, Geoprocessing rīks patiešām piedāvā iespēju izstrādātājiem, kuri migrē no Arcpy. Turklāt ģeoprocesēšanas rīkam jau ir izveidota dabiska darbplūsma, lai apstrādātu ģeoprocesūras uzdevumus, kuru izpildei varētu būt vajadzīgs ilgs laiks. Ja jūs jautājat manam oponionam, man jāsaka: "Lūka, izmanto spēku!".

### Servera objekta paplašinājums (SOE) ###

#### Ievads Servera objektu paplašinājumu (SOE) izstrāde ir standarta veids, kā ESRI piedāvā pielāgot ArcGIS servera darbību. Protams, SOE ir arī COM.

Labākā atsauce uz šo funkciju, labi, ja jums ir instalēts SDK, ir palīdzības failā:

ArcObjects SDK ArcGIS 10.4 - & gt ArcObjects palīdzība .NET izstrādātājiem - & gt Izstrāde ar ArcGIS - & gt ArcGIS paplašināšana serverim - & gt Servera objektu paplašinājumu izstrāde

Šeit esošā piezīme NEVADS jūs attīstīt SOE. Tā vietā mēs izsekojam procedūru, kā pareizi atkļūdot, izveidot un izvietot SOE darbvirsmā un ArcGIS serverī.

Nu, nejūtaties vīlušies, ja ieradīsieties šeit un cerēsiet uzzināt, kā kodēt SOE. Sekojot SDK palīgā norādītajam dokumentam, jums vajadzētu to izdarīt. Vai arī, ja jums ir nepieciešams saīsne ar pilnu paraugu, ieteicams izmēģināt šo ESRI github.

#### Atkļūdošana Bez ArcGIS Server SOE atkļūdošana jāveic vienības testa līmenī. Ja nevēlaties nošķirt SOE loģiku no noklusējuma SOE veidnes koda faila, izmēģiniet maketa sistēmu, piemēram, moq. Tomēr ESRI izstrādātājs nepadarīja savas klases “draudzīgām maketiem”, piemēram, ServerLogger klase ir definēta kā aizzīmogota klase, kas neļauj lielākajai daļai maketa ietvaru pārmantot un aizstāt to ar izspēli.

Ja jums ir ArcGIS Server atkļūdošanas jauda, ​​šeit ir pāris padomi:

  1. Pārliecinieties, ka esat atvēris SOE projektu, izmantojot administratora kontu
  2. Pievienojoties ArcGIS Server procesiem, noteikti atlasiet visu ArcSOC.exe ar veidu (Pārvalda)

Es nevarēju atkļūdot kodu iekš Init, Shutdown un Construct. SOE darbojas ArcSOC konteinerā. Tā kā šīs 3 funkcijas tiek izmantotas SOE izveidošanas un izslēgšanas laikā, ir grūti pateikt, kuram procesam es varu pievienoties.

Izvietot SOE izvietošanu veic divu darbību procedūrā, pieņemot, ka SOE tips ir MapServer un pakalpojums REST.

  1. Ja veidojat SOE projektu VS, tiks izveidots "soe" fails kā arhīvs. ArcGIS Server Manager dodieties uz Vietne - & gt paplašinājumi - & gt Pievienot paplašinājumu, augšupielādējiet šo "soe" failu, un ArcGIS Server parūpēsies par jums visu, piemēram, COM reģistrāciju.
  2. Sagatavojiet kartes datus ArcMap un publicējiet tos kā karšu pakalpojumus ar iespēju “iestudēt”, kas nozīmē “Neuz augšu augšupielādēt, vienkārši sagatavojiet datus”. Tas izveidos SD failu vietnē "C: Users hellocomrade AppData Local ESRI Desktop10.4 Staging". Izmantojot ArcGIS Server Manager, Services - & gt Publish Service, vedni ievadiet ar sd failu un sadaļā Iespējas pārliecinieties, vai esat pārbaudījis SOE, kuru augšupielādējat 1. darbībā. Ja viss izdosies, kartes pakalpojums tiks sākts ar jūsu SOE.
  3. Atveriet vietni "http: // localhost: 6080 / arcgis / rest / services /" un atlasiet 2. darbībā definēto kartes pakalpojumu, ritiniet uz leju līdz lapas apakšai, un jums vajadzētu redzēt "Atbalstītie paplašinājumi".

#### Ievads Pielāgotas ģeoprocesēšanas funkcijas izstrāde ir "jauna" funkcija ESRI, kas izlaista caur ArcPy? Patiesībā, atgriežoties pie 9.3, šī funkcija tika nodrošināta ArcObject .Net. Tomēr dokumentācija tika "paslēpta" grāmatā, un ESRI šķita kautrīga iepazīstināt ar šo funkciju AO izstrādātāju. Jūs pat nevarat atrast veidnes Visual Studio integrācijā šai funkcijai, izmantojot AO .Net SDK. Jums būs jāizstrādā viss no nulles

Labākā atsauce uz šo funkciju, labi, ja jums ir instalēts SDK, ir palīdzības failā:

ArcObjects SDK ArcGIS 10.4 - & gt ArcObjects palīdzība .NET izstrādātājiem - & gt Izstrāde ar ArcGIS - & gt Mācīšanās ArcObjects - & gt ArcObjects paplašināšana - & gt Pielāgoti ģeoprocesēšanas funkciju rīki

Es ceru, ka jūs tagad saprotat, kāpēc es teicu, ka ESRI ir kautrīgs pret šo. Vai redzēt koka struktūru?

Šeit esošā piezīme NEVADS jūs izveidot šādu rīku. Tā vietā mēs izsekojam kārtību, kā pareizi izveidot un izvietot šo rīku ArcMap un ArcGIS serverī.

Nu, nejūtieties vīlušies, ja ieradīsieties šeit un cerēsiet uzzināt, kā kodēt šādu rīku. Sekojot SDK palīgā norādītajam dokumentam, jums vajadzētu to izdarīt. Vai arī, ja jums ir nepieciešama saīsne ar pilnu paraugu, kuras trūkst SDK palīga dokumentā, varat izmēģināt šo ESRI github.

Papildu piezīme: ieviešot IGPFunction2, IsLicensed var vienkārši atgriezties patiess bez nosacījumiem, ja esat pārliecināts, ka šis rīks netiks izplatīts trešai pusei, kura, iespējams, nezina licences veidu, jo īpaši paplašinājumus, ir nepieciešams. Kāpēc? ja plānojat izmantot šo rīku darbvirsmā, motorā un serverī, jums tie visi būs jāpārbauda, ​​ja. citādi, ja. pretējā gadījumā, ja esat aizmirsis un isLicensed atgriež false, jūsu rīks nedarbosies. Kāpēc vienkārši atgriezties true no isLicensed bez pārbaudes un ļaut mitināšanas programmatūrai (mūsu rīks ir tikai dll), lai informētu lietotāju, vai rīku var izpildīt, izpildes laikā izmetot izņēmumu? :) Tas tomēr nav elegants.

#### Reģistrācija Ņemot vērā kompilēšanai gatavu avota kodu bāzi kā pārvaldītu COM VS 2013, vispirms darīšu ar peles labo pogu noklikšķiniet uz projekta nosaukuma - & gt īpašības - & gt Build, atzīmējiet izvēles rūtiņu "Reģistrēties COM interop". Tas padarīs montāžas iekšējo tipu redzamu COM klientam, izmantojot utilītu: RegAsm.exe. Atzīmējot to, C # kompilators ģenerēs tlb failu un izmantos tlb failu, lai pabeigtu reģistrāciju. Šis solis faktiski notiek izklausās pēc nepieciešamības vairs ArcGIS 10 sērijai. ESRI nolēma reģistrēt gan vietējo COM, gan pārvaldīto COM, neizmantojot sistēmas reģistru, izmantojot savu rīku "ESRIRegAsm.exe"Kas pie velna? Pat ESRI vairs neuzticas MS sistēmas reģistram, skumji.

"Reģistrācijai jāiesniedz papildu informācija par produktu, izmantojot Esri utilītu ar nosaukumu ESRIRegAsm.exe. ESRIRegAsm.exe aizstāj standarta Microsoft RegAsm.exe utilītu."

Ja jums ir ArcGIS klases bibliotēkas projekts, kas izveidots, izmantojot ArcGIS veidni, reģistrācija tiks veikta automātiski kā post build notikums. Tāpēc ArcMap pievienojumprogramma vienmēr var automātiski parādīties ArcMap. Tomēr tas neattiecas uz mūsu gadījumu, jo mēs izstrādājam ģimenes ārsta funkciju, kuru ESRI neatbalsta tik labi VS integrācijas ziņā.

Bet ir labi. ESRI nav tik vidēja. Vienkārši pārlūkojot kompilētā dll mapi, ar peles labo pogu noklikšķiniet uz tās, konteksta izvēlnē skatiet sadaļu "Reģistrēties"? Tas to izdarīs! Vai pasaule ir ideāla? Nē! Kad tiek parādīts reģistrācijas dialoglodziņš, varat redzēt tādu produktu kā "Darbvirsma" vai "Dzinējs" vai abus. Tad jums būs jāizvēlas viens reģistrācijai.

Bet viss ģimenes ārsta rīka mērķis ir tāds, ka tas ArcGIS serverī var darboties kā ģimenes ārsts. Kur ir mana ArcGIS servera reģistrācija? Izrādījās, ka ir divi ESRIRegAsm.exe! Viens ir paredzēts ESRI 32 bitu līnijai, otrs - 64 bitu servera līnijai.

32 biti: C: Program Files (x86) Common Files ArcGIS bin

64 biti: C: Program Files Common Files ArcGIS bin

Ja vēlaties reģistrēt savu rīku serverim, komandrindā izmantojiet otro bināro failu. (Noteikti atveriet cmd, izmantojot administratora privilēģiju coz komandrinda neprasīs apstiprināt administratora atļauju, kā to var darīt citas programmatūras, tāpēc jūs saņemsit kļūdu "Nevar rakstīt uz disku". To es darīju:

"C: Program Files Common Files ArcGIS bin esriregasm.exe" c: temp GPNetTrace.dll

Es apzināti ignorēju opciju p / p, tāpēc uznirstošajā dialoglodziņā man tiks lūgts izvēlēties produktu, kurā es vēlētos reģistrēties. Viena lieta, ko jūs varētu vēlēties zināt, ir: kad reģistrācija ir pabeigta un produkts ir ieslēgts, teiksim, ArcGIS Server, šis dll reģistrētajā vietā, mūsu gadījumā tas ir ar C: Temp, process tiks bloķēts. Jūs to nevarēsit atjaunināt. Tad dari reģistrējiet dll zem bin vai obj mapes VS projektam, VS linkeris vairs nevarēs jums izveidot dll.

Pirmkārt, šis rīks jāpievieno ArcMap kā rīkkopa. Kataloga logā. Izveidojot jaunu rīkjoslu sadaļā “Mana rīkkaste” un pēc tam ar peles labo pogu noklikšķiniet uz jaunizveidotās rīkkastes Add- & gtTool, tas parādīs visu reģistrēto rīkjoslu sarakstu, ieskaitot to, kuru tikko reģistrējām. Kā atrast mūsu rīku? Nu, tas ir atkarīgs no paša rīka.

Otrā funkcija "GetFunctionNames" ir metode, kas definēta saskarnē "IGPFunctionFactory". Tā ir nepieciešama, lai ESRI programmatūra varētu iegūt rīka nosaukumu no šīs saskarnes ieviešanas. Rīkjoslas sarakstā kā sakne redzamais nosaukums būs "name.Category", kas ir "NetworkNavigation", un papildu rīka nosaukums būs name.DisplayName, kas ir "Network Trace", iekšēji šis rīks tiek izsekots pēc nosaukuma. .Name, kas ir "TraceNetwork". Tagad jums vajadzētu būt iespējai atrast un pievienot rīku ArcMap.

Labi, priekšspēle ir pabeigta. Atkļūdosim! Tā kā mūsu rīks tika sastādīts kā dll, atkļūdotājs ir jāpievieno jebkuram bināram, kas faktiski izpilda kodu mūsu bibliotēkā. Sadaļā VS atkļūdošana- & gtPievienot procesam. Lai to izdarītu, pārliecinieties, vai esat atvēris VS, izmantojot administratora kontu.

Pieņemot, ka jums izdodas iegūt 64 bitu fona apstrādi ar savu kodu, tas nozīmē, ka jums tas ir

savā kodā. Ja tas neizdodas tieši Execute, baumas ir tādas, ka jūsu dll nav pareizi reģistrēts 64bit ESRIRegAsm.exe. Es nevaru panākt, lai šī daļa darbotos uz mana darbvirsmas, taču jums var paveikties. Ja tā, jums būs jāpievieno atkļūdotājs ar nosaukto procesu "RuntimeLocalSerer.exe". Faktiski ir divi procesi ar tādu pašu nosaukumu. Viens darbojas ar pārvaldītu CLR, otrs - vietējo COM. Es uzskatu, ka jums vajadzētu pievienot ar pārvaldīto (Pārbaudiet kolonnu Tips tabulā "Pieejamie procesi". Tas ir teikts, jūs varat pievienot abus, nospiežot Ctrl uz tastatūras, vienlaikus noklikšķinot uz procesa nosaukuma.

Pieņemsim, ka 64 bitu fona apstrāde ar jums nedarbojas labi. Pēc tam tas būs jāatspējo ArcMap. Ģeogrāfiskā apstrāde - & gt Ģeogrāfiskās apstrādes opcijas - & gt fona apstrāde - & gt Iespējot, noņemiet atzīmi no izvēles rūtiņas Iespējot, lai atspējotu fona apstrādi. Tagad jūs varat vienkārši pievienot atkļūdotāju ar ArcMap procesu.


Vairāku sakņu darbvietas

Vairāku sakņu darbvietas ir uzlabota VS kodeksa spēja, kas ļauj konfigurēt vairākas atšķirīgas mapes darbvietas sastāvdaļai. Tā vietā, lai atvērtu mapi kā darbvietu, tiks atvērts fails & ltname & gt.code-workspace JSON, kurā ir norādītas darbvietas mapes. Piemēram:

VS kodā tika atvērta vairāku sakņu darbvieta

Piezīme: Vizuālā atšķirība starp mapes atvēršanu un .code-darbvietas faila atvēršanu var būt smalka. Lai dotu jums mājienu, ka ir atvērts .code-darbvietas fails, dažos lietotāja interfeisa apgabalos (piemēram, File Explorer saknē) tiek parādīts papildu (Darbvieta) sufikss blakus nosaukumam.

Vairāku sakņu darbvietas bez nosaukuma

Darbvietā ir viegli pievienot vai noņemt mapes. Jūs varat sākt, atverot mapi VS kodā un pēc tam vēlāk pievienojot citas mapes pēc saviem ieskatiem. Ja vien vēl neesat atvēris .code-darbvietas failu, pirmo reizi darbvietai pievienojot otro mapi, VS kods automātiski izveidos & quotititledled & quot darbvietu. Fonā VS kods automātiski uztur jums untitled.code-darbvietas failu, kurā ir visas jūsu pašreizējās sesijas mapes un darbvietas iestatījumi. Darbvieta paliks & quotititledled & quot, līdz jūs nolemjat to saglabāt diskā.

VS kodā tika atvērta vairāku sakņu darbvieta bez nosaukuma

Piezīme: Starp nenosauktu darbvietu un saglabātu darbvietu tiešām nav atšķirības, izņemot to, ka bez nosaukuma darbvieta jums ērtībai tiek automātiski izveidota un vienmēr tiks atjaunota, līdz to saglabājat. Mēs automātiski izdzēšam bez nosaukuma darbvietas (pēc tam, kad jums ir lūgts apstiprinājums), kad aizverat logu, kurā tiek atvērta bez nosaukuma darbvieta.


Uztvērējs 4.12 operētājsistēmai Windows

Piezīme: Citrix iesaka lejupielādēt lietotnes Citrix Workspace jaunāko versiju. 1904. gada vai jaunākā versijā ir kritiski drošības labojumi. Lai iegūtu papildinformāciju, skatiet zināšanu centra rakstu CTX251986

Savietojams ar
Windows 10, 8.1, 7, 2008R2, Thin PC, kā arī Windows Server 2016, 2012 un 2012R2.

Kontrolsummas ADB1AFF0625F6EE0C9745F6F8C523398CF3F4732EB3D2CA5966E97AE6D57536F

Labot, lai iespējotu uztvērēja automātisko atjaunināšanu

Nepieciešama darbība, lai turpinātu automātisko atjaunināšanu uztvērējā.
Nesen tika izlaists jauns drošības sertifikāts, lai vēl vairāk uzlabotu Citrix Receiver drošību. Tomēr šis sertifikāts atspējo uztvērēja automātiskās atjaunināšanas funkcionalitāti. Ir svarīgi, lai jūs lejupielādējiet un instalējiet nesen izlaisto uztvērēja automātiskās atjaunināšanas rīku, lai atjaunotu uztvērēja atjaunināšanas funkcionalitāti.

Lūdzu, pārskatiet produkta dokumentāciju, lai iegūtu pilnu funkciju sarakstu.

Augstas veiktspējas piekļuve Windows virtuālajām lietotnēm un galddatoriem, piekļuve jebkurai vietai no darbvirsmas, sākuma izvēlnes, uztvērēja lietotāja saskarnes vai tīmekļa piekļuves, izmantojot pārlūku Chrome, Internet Explorer vai Firefox.

Citrix Receiver var izmantot ar domēnu un ar domēnu nesaistītiem datoriem, planšetdatoriem un plāniem klientiem. Nodrošina augstas veiktspējas virtualizētu Skype darbam, uzņēmējdarbības un HDX 3D Pro inženierijas lietotņu, multivides, vietējo lietotņu piekļuvi.

Pieejamās valodas
Angļu, franču, vācu, japāņu, korejiešu, krievu, vienkāršotā ķīniešu, spāņu un tradicionālā ķīniešu valoda.

Skripti Citrix Receiver izvietošanai operētājsistēmai Windows

Šajā ZIP failā ir skriptu paraugi, lai izvietotu un konfigurētu Citrix Receiver. Tā ir neobligāta lejupielāde, kuru Citrix nodrošina kā piemēru, lai kalpotu kā piemērs. Pirms lietošanas IT administratoriem ir jāpielāgo skripti atbilstoši savai videi. Atinstalēšanas un instalēšanas skriptus var izmantot, kā norādīts Citrix Receiver for Windows jaunināšanas rokasgrāmatā (CTX135933).

Citrix ADMX / ADML veidnes grupas politikas redaktoram

Šis ZIP fails satur ADMX un ADML failus, lai izvietotu un konfigurētu Citrix Receiver, izmantojot grupas politikas objektu redaktoru. Tā ir izvēles lejupielāde, ko izmanto IT administratori, un nav paredzēta lietošanai galalietotājiem. Administratīvās veidnes (ADMX un ADML failus) var izmantot, kā norādīts Citrix Receiver for Windows jaunināšanas rokasgrāmatā (CTX135933).


8 jauni veidi, kā dot iespēju Firstline darbiniekiem un pārveidot viņu darbu ar Microsoft 365

Uzņēmumi, kas atrodas digitālās transformācijas priekšgalā, atzīst, cik svarīgi ir dot iespēju visiem saviem cilvēkiem izmantot pareizās tehnoloģijas un rīkus. Tāpēc tādās nozarēs kā mazumtirdzniecība, viesmīlība un ražošana notiek kustība, lai digitāli dotu iespēju Firstline Workforce - vairāk nekā 2 miljardiem cilvēku visā pasaulē, kuri strādā uz pakalpojumu vai uzdevumiem orientētās lomās.

Izmantojot Microsoft 365, kas ir pasaules produktivitātes mākonis, mēs esam unikālā pozīcijā, lai palīdzētu visu izmēru un visu nozaru uzņēmumiem sniegt saviem darbiniekiem nepieciešamos rīkus un zināšanas, lai viņi varētu paveikt vislabāko darbu, nezaudējot savas organizācijas vai klientu drošību. 'dati. Piešķirot Firstline darbiniekiem nepieciešamos rīkus, uzņēmumiem jāpievēršas unikālai lietotāju pieredzei, drošībai un atbilstībai, kā arī IT pārvaldībai.

Microsoft 365 Firstline Workers

Microsoft 365 apvieno intuitīvas savas klases labākās produktivitātes lietotnes ar inteliģentiem mākoņpakalpojumiem, lai nodrošinātu jūsu Firstline Workforce.

Ir iedvesmojoši redzēt, kā nozares līderi, piemēram, IKEA un Matraču firma, veicina augstāku darbinieku iesaistīšanos un uzlabo klientu pieredzi, nododot tādus rīkus kā Microsoft Teams sava Firstline Workforce rokās. Lai ietaupītu laiku un izmaksas, IKEA savieno visus organizācijas darbiniekus ar pazīstamām funkcijām, piemēram, tērzēšanu un videozvaniem, un digitalizē pirmās līnijas procesus, piemēram, maiņu pārvaldību.

Šo video izveidoja Microsoft, vienojoties ar Ingka Group.

Matraču firma dod iespēju Firstline darbiniekiem reāllaikā piekļūt informācijai, resursiem un zināšanām, kas viņiem nepieciešami, lai iepriecinātu klientus un nodrošinātu labāku iepirkšanās pieredzi.

Pirms nākamās nedēļas Nacionālās mazumtirdzniecības federācijas (NRF) izstādes mēs esam priecīgi iepazīstināt ar jaunām iespējām Firstline Workers, kas ieradīsies Microsoft 365. Šeit ir īss ieskats drīzumā:

Jauni rīki, kas Firstline darbiniekiem atvieglo saziņu un uzdevumu pārvaldību

  1. Rācija Talkie komandās—Šī jaunā rācijsaziņas pieredze nodrošina skaidru, tūlītēju un drošu balss saziņu mākonī, pārvēršot darbiniekiem vai uzņēmumam piederošos viedtālruņus un rācijas par rāciju. Funkcija, kas jau ir iebūvēta Teams, samazina ierīču skaitu, kas darbiniekiem jānes, un samazina IT izmaksas. Atšķirībā no analogajām ierīcēm ar nedrošiem tīkliem klientiem vairs nav jāuztraucas par šķērsruna vai noklausīšanos no nepiederīgajiem. Tā kā rācija darbojas, izmantojot Wi-Fi vai mobilos datus, to var izmantot dažādās ģeogrāfiskajās vietās. Šī iespēja būs pieejama mobilajā lietotnē Teams, un tā būs integrēta ar nesen prezentēto Samsung Galaxy XCover Pro, ierīci, kas paredzēta jebkuras nozares priekšējo darbinieku strādniekiem. Rācija Talkie būs pieejama privātā priekšskatījumā Komandās šī gada pirmajā pusē.

Intuitīva rācijsaziņas pieredze, lai savienotu komandas locekļus dažādās nodaļās un vietās.

  1. Uzdevumu mērķauditorija, publicēšana un ziņošanaIzmantojot Tasks in Teams, klienti tagad var konsekventi veikt veikala operācijas plašā mērogā visās organizācijas vietās. Korporatīvā un reģionālā vadība var nosūtīt uzdevumu sarakstus, kas paredzēti attiecīgajām vietām, piemēram, konkrētiem mazumtirdzniecības veikaliem, un izsekot to progresu, izmantojot automātiskus reāllaika pārskatus. Vadītājiem ir rīki, lai ērti vadītu darbības savos veikalos, un Firstline Workers ir pieejams vienkāršs saraksts ar prioritātēm, kas pieejams, izmantojot viņu personīgo vai uzņēmuma izsniegto ierīci, norādot, kas tieši jādara tālāk. Uzdevumi, kuru mērķauditorija, publicēšana un pārskatu izveide komandām nāk šī gada pirmajā pusē.

Korporatīvā galvenā mītne var mērķēt, piešķirt un izsekot uzdevumus dažādās vietās. Firstline Workers var apskatīt viņiem un visā veikalā uzticētos uzdevumus.

  1. Darbaspēka vadības integrācijaKlienti, kuri izmanto vadošās trešo personu darbaspēka pārvaldības sistēmas, piemēram, Kronos un JDA, plānošanai, laika un apmeklējuma nodrošināšanai, tagad var sākt tieši integrēties ar Shift, izmantojot Shifts Graph API un SDK. Atbalstītie scenāriji ietver maiņu, grafiku, grafiku grupu, maiņas pieprasījumu, brīvā laika pieprasījumu un atvērto maiņu pieprasījumu pārvaldību. JDA savienotājs maiņām ir atvērts un pieejams vietnē GitHub. Kronos savienotājs maiņām būs pieejams arī vietnē GitHub vēlāk šajā ceturksnī.

Uzlabotas identitātes un piekļuves pārvaldības funkcijas, kas atvieglo IT profesionāļiem nodrošināt Firstline Workers produktivitāti un drošību

  1. Pierakstīšanās ar īsziņu- Izmantojot SMS pierakstīšanos, Firstline darbinieki var pierakstīties savā Azure Active Directory (Azure AD) kontā, izmantojot vienreizējus SMS kodus - samazinot vajadzību atcerēties visu Microsoft 365 un pielāgoto lietojumprogrammu lietotājvārdus un paroles. Pēc reģistrēšanās lietotājam tiek piedāvāts ievadīt savu tālruņa numuru, kas ģenerē SMS tekstu ar vienreizēju paroli. Pierakstīšanās īsziņās ir vienreizēja pierakstīšanās (SSO) pieredze, kas ļauj Firstline darbiniekiem nevainojami piekļūt visām lietotnēm, kuras viņiem ir atļauts izmantot. Šo jauno pierakstīšanās metodi var iespējot atlasītajām grupām un konfigurēt lietotāja līmenī portālā Mans personāls, palīdzot samazināt IT slogu.

Vienreizēji SMS kodi mobilajās ierīcēs, lai pilnveidotu Firstline Workers pierakstīšanās pieredzi.

  1. Izrakstīšanās no koplietotas ierīces—Daudzi Firstline darbinieki izmanto vienu planšetdatoru vai mobilo ierīci, kas tiek koplietota maiņās. Tas var radīt unikālas drošības problēmas organizācijai, kad dažādi darbinieki, kuriem ir piekļuve dažāda veida datiem, dienas laikā izmanto vienu un to pašu ierīci. Izmantojot koplietojamu ierīces izrakstīšanos, Firstline Workers varēs atteikties no visām savām Microsoft 365 un pielāgotajām lietojumprogrammām un pārlūka sesijām ar vienu klikšķi maiņas beigās - novēršot viņu datu, kā arī jebkādas piekļuves klientu datiem pieejamību. nākamajam šīs ierīces lietotājam.

Ar vienu klikšķi Firstline Workers var izrakstīties no koplietotas Android ierīces un izrakstīties no visām lietojumprogrammām un pārlūka sesijām, lai novērstu sensitīvu datu kopīgošanu ar citu ierīces lietotāju.

  1. Piekļuves kontrole ārpus darba maiņas lietotnei Teams—IT administratori tagad var konfigurēt komandas, lai ārpus darba laika ierobežotu darbinieku piekļuvi lietotnei savā personiskajā ierīcē. Šī funkcija palīdz nodrošināt, ka darbinieki neviļus nestrādā, kamēr nav maiņas, un palīdz darba devējiem ievērot darba noteikumus. Šī funkcija klientiem tiks uzsākta šajā ceturksnī.

Parādiet ziņojumu un / vai atspējojiet piekļuvi lietotnei Teams, kad Firstline Workers ir ārpus darba.

  1. Deleģēta lietotāju pārvaldība- Firstline vadītāji var apstiprināt paroles atiestatīšanu un ļaut darbiniekiem izmantot savus tālruņa numurus SMS pierakstīšanai, izmantojot visu vienu pielāgojamu portālu, ko IT iespējojis Firstline vadītājiem. Deleģētā lietotāju pārvaldība var piešķirt Firstline vadītājiem piekļuvi portālam Mans personāls, lai viņi varētu atbloķēt personāla jautājumus - samazinot identitātes pārvaldības slogu IT jomā un uzturot darbiniekus savienojumā ar darbā nepieciešamajām lietotnēm.

Izmantojot portālu Mans personāls, deleģētā lietotāju pārvaldība ļauj Firstline pārvaldniekam pārvaldīt savas komandas akreditācijas datus un palīdzēt atjaunot paroles.

  1. Ienākošo nodrošināšana no SAP SuccessFactors uz Azure AD—Azure AD lietotāju nodrošināšanas pakalpojums tagad ir integrēts ar SAP SuccessFactors, padarot Firstline Workers identitātes iekļaušanu un pārvaldību plašā mērogā visās lietojumprogrammās, kurās tiek izmantota Azure AD. Šī funkcija publiskajā priekšskatījumā balstās uz iespēju nodrošināt lietotājus Azure AD no darbdienas, citas populāras cilvēkkapitāla pārvaldības (HCM) sistēmas, kas jau ir vispārpieejama. Integrācija ar šīm uzskaites sistēmām palīdz IT no pirmās dienas mērogot Firstline Workers un # 8217 uzņemšanu un produktivitāti.

Tā kā Azure AD lietotāju nodrošināšanas pakalpojums tagad ir integrēts SAP SuccessFactors, kā arī Workday, Firstline Workers lietotāju identitātes ir vieglāk iekļaut jebkādā apjomā. Parādīts šeit, jūs varat sākt provizorisko ciklu un izmantot progresa joslu un nodrošināšanas žurnālus, lai izsekotu nodrošināšanas procesu.

Paredzams, ka visas šīs iespējas tiks ieviestas šā gada pirmajā pusē, izņemot gadījumus, kad tas ir norādīts.

Iespējas Firstline darbiniekiem iegūt konkurences priekšrocības

Jauns pētījums sadarbībā ar Harvard Business Review Analytic Services uzsver Firstline darbinieku neizmantoto potenciālu mazumtirdzniecībā.

Skatoties uz priekšu

Tas ir tikai nākamais solis mūsu ceļojumā, lai ikvienam planētas cilvēkam un organizācijai dotu iespēju sasniegt vairāk. Mūsu mērķis ir veidot rīkus un pieredzi modernai darba vietai un darba ņēmējiem visos organizācijas līmeņos. Mēs turpināsim attīstīt un piedāvāt tirgū mērķtiecīgi izstrādātas Firstline Worker iespējas un pieredzi sadarbībā ar klientiem un nozares līderiem. Un mēs turpināsim ieviest jauninājumus un veidot funkcijas, kas vienkāršo darbu, apvieno cilvēkus un palīdz lielām un mazām organizācijām sasniegt vairāk. Nāciet mūs redzēt nākamnedēļ NRF 2020 stendā # 4501.


ArcObjects .NET - kā aizvērt / atbrīvot FeatureClass, Workspace, Factory - ģeogrāfiskās informācijas sistēmas

  • Deutsch
  • Angļu
  • Español
  • Français
  • Italiano
  • 日本語
  • 한국어
  • Português
  • Русский
  • 简体 中文
  • Čehu
  • Poļu

Inovācijas un sadarbības programma, sinhronizēta programmu vadība jaunām programmām

Mehānisko, programmatūras un elektronisko sistēmu tehnoloģiju integrācija transportlīdzekļu sistēmām

Patēriņa preces un mazumtirdzniecība

Produktu jauninājumi, efektīvi pārvaldot integrētus preparātus, iesaiņošanas un ražošanas procesus

Jauna produkta izstrāde izmanto datus, lai uzlabotu kvalitāti un rentabilitāti un samazinātu laiku līdz nonākšanai tirgū un izmaksās

Piegādes ķēdes sadarbība kritiski svarīgu aktīvu projektēšanā, būvniecībā, uzturēšanā un izbeigšanā

Rūpnieciskās mašīnas un smagās iekārtas

Ražošanas procesa plānošanas un dizaina integrēšana mūsdienu mašīnu sarežģītībai

Pārredzamība, atbilstība un atbildība apdrošināšanas un finanšu nozarēs

Kuģu būves jauninājumi, lai ilgtspējīgi samazinātu nākotnes flotu attīstības izmaksas

Siemens PLM Software, līderis mediju un telekomunikāciju programmatūras jomā, piedāvā digitālus risinājumus vismodernākajām tehnoloģijām, kas atbalsta sarežģītus produktus strauji mainīgajā tirgū.

Medicīniskās ierīces un farmācija

“Personalizētu produktu jauninājumi”, izmantojot digitalizāciju, lai apmierinātu tirgus prasības un samazinātu izmaksas

Ātrāks laiks laišanai tirgū, mazāk kļūdu programmatūras izstrādē

Noņemiet barjeras un augiet, saglabājot savu apakšējo līniju. Mēs demokratizējam visstiprākos digitālos dvīņus jūsu mazajiem un vidējiem uzņēmumiem.


484 domas par & ldquoWorkspace Environment Management (WEM) 2106 un rdquo

Man ir problēma ar sieviešu profilu tīrīšanu. Šķiet, ka profiliem ir pārāk gari ceļi, un tīrīšanas rīks neizdodas, izmantojot & # 8220error skenējot profilus! & # 8221. Ja skenēju vienu profilu un noņemu failus ar garākajiem ceļiem, viss darbojas labi. Vai tam ir kāds risinājums? Mēs izmantojam 1912. gada ltsr cu2.

Sakari, es šeit zvanu, jo ar šo esmu daudz saskāries. Google Chrome ir bēdīgi slavens ar šiem patiešām dziļajiem apakšmapju kokiem saviem datiem (ar garām nejaušu rakstzīmju virknēm vienas mapes nosaukumam). Es uzskatu, ka problēmas avots ir diska kartēšana un lietojumprogrammas konteksts. Ja lietotāja profils atrodas tīkla diskā, piemēram, y:, kartēts ar servera vārds kaut UPM_Profiles, kad cita lietojumprogramma (piemēram, WEM) mēģina piekļūt šīm mapēm tieši, izmantojot UNC ceļu, garums tiek pagarināts par 40 vai vairāk rakstzīmes. Es nezinu, kā to atrisināt, taču domāju, ka būtu noderīgi uzzināt, kā tika izveidoti šie ceļi (kuru pastāvēšana ir pārāk ilga).

Mēs jauninājām uz WEM 2012 un šo mapi
& # 8220C: Program Files (x86) Norskale Norskale Infrastructure Services DBSync & # 8221 vairs nepastāv. Vai jums ir ideja, vai tā ir normāla uzvedība?

Es domāju, ka viņi noņēma šo mapi, kad noņēma vecāko aģenta kešatmiņas sinhronizācijas tehnoloģiju.

Hey Carl, vai esat redzējuši problēmas, kurās atspējojāt WEM splashscreen, bet tas nedarbojas, joprojām tiek parādīts splash screen pēc pieteikšanās?


Nepieciešamie parametri

Labierīcības

Izmantojiet šo parametru, lai norādītu vienu vai vairākas vietas, kas kalpo kā iespējas. Šis pakalpojums identificē labākās iespējas vai iespējas pieprasījuma punktu apkalpošanai.

  • url - Norādiet REST vaicājuma pieprasījumu jebkuram ArcGIS Server objektam, kartei vai ģeoprocesūras pakalpojumam, kas atgriež JSON funkciju kopu. Šis īpašums nav obligāts. Tomēr jānorāda vai nu funkcijas, vai URL.
  • Features - norādiet funkciju masīvu. Šis īpašums nav obligāts. Tomēr ir jānorāda vai nu pazīmes, vai URL īpašība.

    ģeometrija - norādiet ievades punkta ģeometriju, kas satur x un y īpašības, kā arī īpašību spatialReference. Ja īpašums spatialReference ir noteikts visam JSON, nav nepieciešams definēt šo rekvizītu katrai ģeometrijai. Šādi rīkojoties, tiek samazināts ievades JSON lielums, ja ieejai ir daudz funkciju, un tiek uzlabota veiktspēja. Šis rekvizīts nav nepieciešams, ja koordinātas atrodas tajā pašā telpiskajā atsaucē kā jūsu tīkla datu kopa. Ja koordinātas atrodas citā telpiskā atsaucē, jums jānorāda telpiskās atsauces labi pazīstamais ID (WKID). Skatiet ģeogrāfisko koordinātu sistēmu un projicēto koordinātu sistēmu, lai meklētu WKID vērtības.

Kā labāko praksi ieteicams skaidri norādīt spatialReference un norādīt visu JSON, nevis katru atsevišķu ģeometriju.

Objektu atribūti

Nosakot iespējas, katram var iestatīt rekvizītus, piemēram, tā nosaukumu vai veidu, izmantojot šādus atribūtus:

Iekārtas nosaukums. Nosaukums tiek iekļauts izlaides piešķiršanas līniju nosaukumā, ja iekārta ir daļa no risinājuma.

  • 0 (kandidāts) - iekārta, kas var būt daļa no risinājuma.
  • 1 (Obligāti) - iekārta, kurai jābūt daļai no risinājuma.
  • 2 (konkurents) - konkurējošs objekts, kas potenciāli novērš pieprasījumu no jūsu objektiem. Konkurentu iespējas ir specifiskas, lai palielinātu tirgus daļu un mērķa tirgus daļas problēmu veidus, un tās tiek ignorētas citos problēmu veidos.

Objekta relatīvais svērums, ko izmanto, lai novērtētu vienas iekārtas pievilcību, vēlamību vai neobjektivitāti salīdzinājumā ar citu.

Piemēram, vērtība 2,0 var uztvert to klientu izvēli, kuri dod priekšroku iepirkšanās iespējas vienā vietā, nevis citā. Faktori, kas potenciāli ietekmē objekta svaru, ir kvadrātmetri, apkārtne un ēkas vecums. Svara vērtības, kas nav viena, tiek ievērotas tikai pēc maksimālās tirgus daļas un mērķa tirgus daļas problēmu veidiem, tās tiek ignorētas citos problēmu veidos.

Impedances vērtība, pie kuras jāpārtrauc pieprasījuma punktu meklēšana no attiecīgā objekta. Pieprasījuma punktu nevar piešķirt objektam, kas pārsniedz šeit norādīto vērtību.

Šis atribūts ļauj katram pieprasījuma punktam norādīt atšķirīgu robežvērtību. Piemēram, jūs varat uzzināt, ka cilvēki lauku apvidos ir gatavi nobraukt līdz 10 jūdzēm, lai sasniegtu objektu, savukārt pilsētnieki ir gatavi nobraukt tikai līdz 2 jūdzēm. Varat modelēt šo uzvedību, visiem lauku rajonos esošajiem pieprasījuma punktiem nosakot vērtību 10 un pilsētu teritorijās pieprasījuma punktu robežvērtību 2.

Lauks Jauda ir specifisks, lai maksimizētu kapacitēta pārklājuma problēmas tipu, pārējie problēmu veidi ignorē šo lauku.

Jauda norāda, cik lielu svērto pieprasījumu iekārta spēj nodrošināt. Pārmērīgs pieprasījums objektam netiks piešķirts pat tad, ja šis pieprasījums ir objekta noklusējuma mērījumu robežās.

Jebkura laukam Capacity piešķirtā vērtība ignorē noklusējuma kapacitātes parametru (Default_Capacity Python) attiecīgajam objektam.

Norādiet virzienu, kādā transportlīdzeklis var ierasties un izbraukt no objekta.

Kā šī atribūta vērtība jānorāda viens no skaitļiem, kas uzskaitīti šīs tabulas slejā Kodēta vērtība. Vērtības slejā Iestatīšana ir aprakstošie CurbApproach atribūtu vērtību nosaukumi, kurus, iespējams, esat redzējis, izmantojot ArcGIS Network Analyst paplašinājuma programmatūru.

Transportlīdzeklis var tuvoties objektam un izbraukt no tā jebkurā virzienā, tāpēc objektā ir atļauts pagriezties. Šo iestatījumu var izvēlēties, ja ir iespējams un vēlams, lai jūsu transportlīdzeklis pagrieztos objektā. Šis lēmums var būt atkarīgs no ceļa platuma un satiksmes apjoma vai no tā, vai objektā ir autostāvvieta, kur transportlīdzekļi var iebraukt un apgriezties.

Visas ierašanās un atiešanas kombinācijas ir atļautas, izmantojot pieeju abām transportlīdzekļa malām.

Kad transportlīdzeklis tuvojas objektam un izbrauc no tā, objektam jāatrodas transportlīdzekļa labajā pusē. Pagrieziens ir aizliegts. To parasti izmanto transportlīdzekļiem, piemēram, autobusiem, kuriem jābrauc ar autobusu pieturu labajā pusē.

Parādīta pieļaujamā ierašanās un izlidošanas kombinācija pieejas labajai pusei ceļa malā.

Kad transportlīdzeklis tuvojas objektam un izbrauc no tā, objektam jāatrodas transportlīdzekļa kreisajā pusē. Pagrieziens ir aizliegts. To parasti izmanto transportlīdzekļiem, piemēram, autobusiem, kuriem jāierodas ar autobusu pieturu kreisajā pusē.

Parādīta pieļaujamā ierašanās un izlidošanas kombinācija piebraukšanai uz ceļa kreisās puses.

Kad transportlīdzeklis tuvojas objektam, iekārta var atrasties transportlīdzekļa abās pusēs, taču, izejot no tā, transportlīdzeklim jāturpina tajā pašā virzienā, kurā tas ieradās. Apgrieziens ir aizliegts.

Tiek parādītas pieļaujamās ierašanās un izlidošanas kombinācijas, lai tuvotos ceļa apgriezienam.

CurbApproach atribūts ir paredzēts darbam ar abiem nacionālo braukšanas standartu veidiem: labās puses satiksme (Amerikas Savienotās Valstis) un kreisās puses kustība (Lielbritānija). Vispirms apsveriet incidentu transportlīdzekļa kreisajā pusē. Tas vienmēr atrodas kreisajā pusē neatkarīgi no tā, vai transportlīdzeklis pārvietojas pa ceļa kreiso vai labo pusi. Atkarībā no valsts braukšanas standartiem jūsu lēmums tuvoties incidentam ir viens no diviem virzieniem, tas ir, tāpēc tas nonāk transportlīdzekļa labajā vai kreisajā pusē. Piemēram, ja vēlaties ierasties starpgadījumā un nav satiksmes joslas starp transportlīdzekli un incidentu, izvēlieties 1 (transportlīdzekļa labā puse) Amerikas Savienotajās Valstīs un 2 (transportlīdzekļa kreisā puse) Apvienotajā Karalistē.

Ar labās puses satiksmi ceļa apmale, kas atstāj transportlīdzekli vistuvāk objektam, ir transportlīdzekļa labā puse. Pie kreisās satiksmes kustības apmales pieeja, kas atstāj transportlīdzekli vistuvāk objektam, ir transportlīdzekļa kreisā puse.

Virziens, kurā punkts pārvietojas. Vienības ir grādi, un tās mēra pulksteņrādītāja virzienā no patiesajiem ziemeļiem. Šis lauks tiek izmantots kopā ar lauku BearingTol.

Datu nesēji parasti tiek automātiski nosūtīti no mobilās ierīces, kas aprīkota ar GPS uztvērēju. Mēģiniet iekļaut datus par gultņiem, ja ielādējat pārvietojamu ievades vietu, piemēram, gājēju vai transportlīdzekli.

Izmantojot šo lauku, tiek novērsta vietu pievienošana nepareizajām malām, kas var notikt, ja transportlīdzeklis atrodas, piemēram, krustojuma vai estakādes tuvumā. Gultnis arī palīdz rīkam noteikt, kurā ielas pusē ir punkts.

Gultņa pielaides vērtība rada pieņemamu gultņu vērtību diapazonu, atrodot kustīgus punktus uz malas, izmantojot Gultņu lauku. Ja Gultņa lauka vērtība ir pieņemamo vērtību diapazonā, kas tiek ģenerēta no gultņu pielaides malā, pretējā gadījumā punktu var pievienot kā tīkla atrašanās vietu, tiek novērtēts tuvākais nākamās tuvākās malas punkts.

Vienības ir izteiktas grādos, un noklusējuma vērtība ir 30. Vērtībām jābūt lielākām par 0 un mazākām par 180. Vērtība 30 nozīmē, ka tad, kad tīkla analītiķis mēģina pievienot tīkla atrašanās vietu malā, tiek pieņemts pieņemamo gultņu vērtību diapazons. radīja 15 grādus uz abām malām (pa kreisi un pa labi) un abos digitalizētajos malas virzienos.

Šis lauks tiek izmantots risināšanas procesā tikai tad, ja laukiem Bearing un BearingTol ir arī vērtības, tomēr lauka NavLatency vērtības ievadīšana nav obligāta, pat ja vērtības ir Bearing un BearingTol. NavLatency norāda, cik lielas izmaksas ir paredzamas no brīža, kad GPS informācija tiek nosūtīta no braucoša transportlīdzekļa uz serveri, un no brīža, kad apstrādātā maršruts tiek saņemts ar transportlīdzekļa navigācijas ierīci.

NavLatency vienības ir vienādas ar impedances atribūta vienībām.

Sintakses piemēri iekārtām

Sintakse objektu norādīšanai, izmantojot JSON struktūru funkcijām

Sintakse objektu norādīšanai, izmantojot URL, kas atgriež JSON atbildi

Piemēri iekārtām

1. piemērs: objektu norādīšana tajā pašā telpiskajā atsaucē kā tīkla datu kopa, izmantojot JSON struktūru. Piemērs parāda arī to, kā norādīt dažus atribūtus incidentiem.

2. piemērs: Telpu norādīšana Web Mercator telpiskajā atsaucē, izmantojot JSON struktūru

3. piemērs: Iespēju norādīšana, izmantojot URL

Vietrādis URL pieprasa dažas kartes pakalpojuma funkcijas. Var norādīt arī URL, kas vaicā iezīmes no pakalpojumu pakalpojuma.

Pieprasījuma_punkti

Izmantojiet šo parametru, lai norādītu vienu vai vairākus pieprasījuma punktus. Pakalpojums identificē labākās iespējas, galvenokārt balstoties uz to, kā tās apkalpo norādītos pieprasījuma punktus.

  • url - Norādiet REST vaicājuma pieprasījumu jebkuram ArcGIS Server objektam, kartei vai ģeoprocesūras pakalpojumam, kas atgriež JSON funkciju kopu. Šis īpašums nav obligāts. Tomēr jānorāda vai nu funkcijas, vai URL.
  • Features - norādiet funkciju masīvu. Šis īpašums nav obligāts. Tomēr ir jānorāda vai nu pazīmes, vai URL īpašība.

    ģeometrija - norādiet ievades punkta ģeometriju, kas satur x un y īpašības, kā arī īpašību spatialReference. Ja īpašums spatialReference ir noteikts visam JSON, nav nepieciešams definēt šo rekvizītu katrai ģeometrijai. Šādi rīkojoties, tiek samazināts ievades JSON lielums, ja ieejai ir daudz funkciju, un tiek uzlabota veiktspēja. Šis rekvizīts nav nepieciešams, ja koordinātas atrodas tajā pašā telpiskajā atsaucē kā jūsu tīkla datu kopa. Ja koordinātas atrodas citā telpiskā atsaucē, jums jānorāda telpiskās atsauces labi pazīstamais ID (WKID). Skatiet ģeogrāfisko koordinātu sistēmu un projicēto koordinātu sistēmu, lai meklētu WKID vērtības.

Kā labāko praksi ieteicams skaidri norādīt spatialReference un norādīt visu JSON, nevis katru atsevišķu ģeometriju.

Pieprasījuma_punktu atribūti

Norādot pieprasījuma punktus, katram var iestatīt rekvizītus, piemēram, tā nosaukumu vai svaru, izmantojot šādus atribūtus:

Pieprasījuma punkta nosaukums. Nosaukums tiek iekļauts izejas piešķiršanas līnijas vai līniju nosaukumā, ja pieprasījuma punkts ir daļa no risinājuma.

Grupas nosaukums, kurai pieder pieprasījuma punkts. Šis lauks tiek ignorēts problēmu veidiem Maksimizēt kapacitatīvo pārklājumu, Mērķa tirgus daļa un Maksimizēt tirgus daļu.

Ja pieprasījuma punktiem ir kopīgs grupas nosaukums, risinātājs visus grupas dalībniekus piešķir vienai un tai pašai iespējai. (Ja ierobežojumi, piemēram, nogriešanas attālums, neļauj kādam no grupas pieprasījuma punktiem sasniegt to pašu iespēju, neviens no pieprasījuma punktiem netiek piešķirts.)

Pieprasījuma punkta relatīvais svērums. Vērtība 2,0 nozīmē, ka pieprasījuma punkts ir divtik svarīgs nekā tas, kura svars ir 1,0. Ja pieprasījuma punkti atspoguļo mājsaimniecības, piemēram, svars var norādīt cilvēku skaitu katrā mājsaimniecībā.

Impedances vērtība, pie kuras jāpārtrauc pieprasījuma punktu meklēšana no attiecīgā objekta. Pieprasījuma punktu nevar piešķirt objektam, kas pārsniedz šeit norādīto vērtību.

Šis atribūts ļauj norādīt katra pieprasījuma punkta robežvērtību. Piemēram, jūs varat uzzināt, ka cilvēki lauku apvidos ir gatavi nobraukt līdz 10 jūdzēm, lai sasniegtu objektu, savukārt pilsētas rajonos dzīvojošie ir gatavi nobraukt tikai līdz 2 jūdzēm. Varat modelēt šo uzvedību, visiem lauku rajonos esošajiem pieprasījuma punktiem nosakot vērtību 10 un pilsētu teritorijās pieprasījuma punktu robežvērtību 2.

Šīs atribūta vērtības vienības nosaka parametrs mērīšanas vienības.

Šī atribūta vērtība ignorē analīzes noklusējuma kopu, izmantojot parametru default_measurement_cutoff.Noklusējuma vērtība ir Null, kā rezultātā visiem pieprasījuma punktiem tiek izmantota noklusējuma vērtība, ko iestatījis parametrs default_measurement_cutoff.

Ignorēt noklusējuma vērtību, kas iestatīta analīzei, izmantojot parametru Measurement_transformation_model.

Ignorēt noklusējuma vērtību, kas iestatīta analīzei, izmantojot parametru Measurement_transformation_model.

Norādiet virzienu, kādā transportlīdzeklis var pienākt vai izbraukt no tā. Kā šī atribūta vērtība jānorāda viens no skaitļiem, kas uzskaitīti šīs tabulas slejā Kodēta vērtība. Vērtības slejā Iestatīšana ir aprakstošie CurbApproach atribūtu vērtību nosaukumi, kurus, iespējams, esat redzējis, izmantojot ArcGIS Network Analyst paplašinājuma programmatūru.

Transportlīdzeklis var tuvoties pieprasījuma punktam un izbraukt no tā jebkurā virzienā.

Visas ierašanās un atiešanas kombinācijas ir atļautas, izmantojot pieeju abām transportlīdzekļa malām.

Kad transportlīdzeklis tuvojas pieprasījuma punktam vai izbrauc no tā, pieprasījuma punktam jābūt transportlīdzekļa labajā pusē. To parasti izmanto transportlīdzekļiem, piemēram, autobusiem, kuriem jāierodas ar autobusu pieturu labajā pusē.

Parādīta pieļaujamā ierašanās un izlidošanas kombinācija pieejas labajai pusei ceļa malā.

Kad transportlīdzeklis tuvojas pieprasījuma punktam vai izbrauc no tā, pieprasījuma punktam jābūt transportlīdzekļa kreisajā pusē. To parasti izmanto transportlīdzekļiem, piemēram, autobusiem, kuriem jāierodas ar autobusu pieturu kreisajā pusē.

Parādīta pieļaujamā ierašanās un izlidošanas kombinācija piebraukšanai uz ceļa kreisās puses.

Kad transportlīdzeklis tuvojas pieprasījuma punktam, pieprasījuma punkts var atrasties transportlīdzekļa abās pusēs, tomēr, izbraucot, transportlīdzeklim jāturpina tajā pašā virzienā, kurā tas ieradās. Apgrieziens ir aizliegts.

Tiek parādītas pieļaujamās ierašanās un izlidošanas kombinācijas, lai tuvotos ceļa apgriezienam.

CurbApproach atribūts ir paredzēts darbam ar abiem nacionālo braukšanas standartu veidiem: labās puses satiksme (Amerikas Savienotās Valstis) un kreisās puses kustība (Lielbritānija). Vispirms apsveriet pieprasījuma punktu transportlīdzekļa kreisajā pusē. Tas vienmēr atrodas kreisajā pusē neatkarīgi no tā, vai transportlīdzeklis pārvietojas pa ceļa kreiso vai labo pusi. Atkarībā no valsts braukšanas standartiem jūsu lēmums tuvoties pieprasījuma punktam ir viens no diviem virzieniem, tas ir, tāpēc tas nonāk transportlīdzekļa labajā vai kreisajā pusē. Piemēram, ja vēlaties ierasties pieprasījuma vietā un nav satiksmes joslas starp transportlīdzekli un pieprasījuma punktu, izvēlieties 1 (transportlīdzekļa labā puse) Amerikas Savienotajās Valstīs un 2 (transportlīdzekļa kreisā puse) Amerikas Savienotajās Valstīs Karaliste.

Ar labās puses kustību ceļa apmale, kas atstāj transportlīdzekli vistuvāk pieprasījuma punktam, ir transportlīdzekļa labā puse. Pie kreisās puses satiksmes apmales pieeja, kas atstāj transportlīdzekli vistuvāk pieprasījuma punktam, ir transportlīdzekļa kreisā puse.

Virziens, kurā punkts pārvietojas. Vienības ir grādi, un tās mēra pulksteņrādītāja virzienā no patiesajiem ziemeļiem. Šis lauks tiek izmantots kopā ar lauku BearingTol.

Datu nesēji parasti tiek automātiski nosūtīti no mobilās ierīces, kas aprīkota ar GPS uztvērēju. Mēģiniet iekļaut datus par gultņiem, ja ielādējat pārvietojamu ievades vietu, piemēram, gājēju vai transportlīdzekli.

Izmantojot šo lauku, tiek novērsta vietu pievienošana nepareizajām malām, kas var notikt, ja transportlīdzeklis atrodas, piemēram, krustojuma vai estakādes tuvumā. Gultnis arī palīdz rīkam noteikt, kurā ielas pusē ir punkts.

Gultņa pielaides vērtība rada pieņemamu gultņu vērtību diapazonu, atrodot kustīgus punktus uz malas, izmantojot Gultņu lauku. Ja Gultņa lauka vērtība ir pieņemamo vērtību diapazonā, kas tiek ģenerēta no gultņu pielaides malā, pretējā gadījumā punktu var pievienot kā tīkla atrašanās vietu, tiek novērtēts tuvākais nākamās tuvākās malas punkts.

Vienības ir izteiktas grādos, un noklusējuma vērtība ir 30. Vērtībām jābūt lielākām par 0 un mazākām par 180. Vērtība 30 nozīmē, ka tad, kad tīkla analītiķis mēģina pievienot tīkla atrašanās vietu malā, tiek pieņemts pieņemamo gultņu vērtību diapazons. radīja 15 grādus uz abām malām (pa kreisi un pa labi) un abos digitalizētajos malas virzienos.

Šis lauks tiek izmantots risināšanas procesā tikai tad, ja laukiem Bearing un BearingTol ir arī vērtības, tomēr lauka NavLatency vērtības ievadīšana nav obligāta, pat ja vērtības ir Bearing un BearingTol. NavLatency norāda, cik lielas izmaksas ir paredzamas no brīža, kad GPS informācija tiek nosūtīta no braucoša transportlīdzekļa uz serveri, un no brīža, kad apstrādātā maršruts tiek saņemts ar transportlīdzekļa navigācijas ierīci.

NavLatency vienības ir vienādas ar impedances atribūta vienībām.

Pieprasījuma_punktu sintakses piemēri

Sintakse pieprasījuma punktu noteikšanai, izmantojot funkciju JSON struktūru

Sintakse pieprasījuma punktu noteikšanai, izmantojot URL, kas atgriež JSON atbildi

Piemēri pieprasījuma_punktiem

1. piemērs: Pieprasījuma punktu norādīšana tīkla datu kopas telpiskajā atsaucē, izmantojot JSON struktūru. Piemērs parāda arī to, kā norādīt dažus atribūtus pieprasījuma punktiem.

2. piemērs: Pieprasījuma punktu norādīšana Web Mercator telpiskajā atsaucē, izmantojot JSON struktūru

3. piemērs: Pieprasījuma punktu norādīšana, izmantojot URL

Vietrādis URL pieprasa dažas kartes pakalpojuma funkcijas. Var norādīt arī URL, kas vaicā iezīmes no pakalpojumu pakalpojuma.

Žetons

Izmantojiet šo parametru, lai norādītu marķieri, kas nodrošina tā lietotāja identitāti, kuram ir atļaujas piekļūt pakalpojumam. Piekļuves pakalpojumu lapa sniedz plašāku informāciju par to, kā var iegūt šādu piekļuves marķieri.

Piemērs (aizstājiet & ltyourToken & gt ar derīgu marķieri):

Izmantojiet šo parametru, lai norādītu atbildes formātu. Parametra argumenti var būt html, json vai pjson, piemēram, f = json. Pjson vērtība tiek izmantota, lai drukātu JSON atbildi skaistā formātā.


Bloķētu .NET Framework instalāciju un atinstalēšanas problēmu novēršana

Palaidot .NET Framework 4.5 vai jaunākas versijas tīmekļa vai bezsaistes instalēšanas programmu, var rasties problēma, kas novērš vai bloķē .NET Framework instalēšanu. Šajā tabulā ir uzskaitītas iespējamās bloķēšanas problēmas un sniegtas saites uz problēmu novēršanas informāciju.

Operētājsistēmā Windows 8 un jaunāka versija .NET Framework ir operētājsistēmas sastāvdaļa, un to nevar patstāvīgi atinstalēt. .NET Framework atjauninājumi tiek parādīti Instalētie atjauninājumi Vadības paneļa cilne Programmas un iespējas lietotne. Operētājsistēmām, kurās .NET Framework nav iepriekš instalēta, .NET Framework parādās Atinstalējiet vai mainiet programmu cilne (vai Pievienot / noņemt programmas cilne) Programma un funkcijas vadības panelī. Informāciju par Windows versijām, kurās .NET Framework ir iepriekš instalēta, skatiet sadaļā Sistēmas prasības.

Tā kā .NET Framework 4.x versijas ir vietējie atjauninājumi, vecāku .NET Framework 4.x versiju nevar instalēt sistēmā, kurā jau ir instalēta jaunāka versija. Piemēram, sistēmā ar Windows 10 Fall Creators Update nevar instalēt .NET Framework 4.6.2, jo .NET Framework 4.7.1 ir iepriekš instalēta kopā ar operētājsistēmu.

Jūs varat noteikt, kuras .NET Framework versijas ir instalētas sistēmā. Lai iegūtu papildinformāciju, skatiet sadaļu Kā: Nosakiet, kuras .NET Framework versijas ir instalētas.

Šajā tabulā 4.5.x attiecas uz .NET Framework 4.5 un tās versiju laidieniem, 4.5.1 un 4.5.2, 4.6.x attiecas uz .NET Framework 4.6 un tā punktu laidieniem 4.6.1 un 4.6.2 , 4.7.x attiecas uz .NET Framework 4.7 un tā versiju laidieniem, 4.7.1 un 4.7.2, un 4.8 attiecas uz .NET Framework 4.8.

Programmu saderības problēmas

.NET Framework 4.5 vai tā izlaišanas instalēšana neizdodas ar kļūdas kodu 1603 vai tiek bloķēta, kad tas darbojas Windows programmu saderības režīmā. The Programmas saderības palīgs norāda, ka .NET Framework, iespējams, nav instalēta pareizi, un aicina to pārinstalēt, izmantojot ieteicamo iestatījumu (programmas saderības režīms). Programmu saderības režīmu programmas saderības palīgs varēja iestatīt arī iepriekšējiem neveiksmīgiem vai atceltiem mēģinājumiem palaist .NET Framework iestatīšanu.

.NET Framework instalēšanas programma nevar darboties programmu saderības režīmā. Lai atrisinātu šo bloķēšanas problēmu, jums jāizmanto reģistra redaktors, lai pārliecinātos, ka saderības režīma iestatījums nav iespējots visā sistēmā:

Izvēlies Sākt pogu un pēc tam izvēlieties Palaist.

Iekš Palaist dialoglodziņā ierakstiet & quotregedit & quot un pēc tam izvēlieties labi.

Reģistra redaktorā atrodiet šādus apakšatslēgas:

HKEY_CURRENT_USER SOFTWARE Microsoft Windows NT CurrentVersion AppCompatFlags Saderības palīgs Pastāvīgi

Kolonnā Nosaukums meklējiet .NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 vai 4.7.2 lejupielādes nosaukumus atkarībā no tā, kura versija esat instalējot un izdzēšot šos ierakstus. Lejupielādes nosaukumus skatiet rakstā .NET Framework izstrādātājiem instalēšana.

Atkārtoti palaidiet .NET Framework instalēšanas versiju 4.5, 4.5.1, 4.5.2 vai 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 vai 4.7.2.


Skatīties video: GIS Tutorial: ArcMap Custom Toolbars Tutorial