Thursday, June 14, 2018
Monday, June 11, 2018
[Snippet]: Fetch User Name and Email Address from Windows AD Group using Powershell script.
FetchAdUsers.ps1
#Store users' info in CSV
Get-ADGroupMember -Identity GROUPNAME -Recursive|Get-ADUser -Properties Mail, MemberOf | Select-Object GivenName, Surname, SamAccountName, Mail | Export-csv -path GROUPNAME .csv -NoTypeInformation
#Store users' info in CSV
Get-ADGroupMember -Identity GROUPNAME -Recursive|Get-ADUser -Properties Mail, MemberOf | Select-Object GivenName, Surname, SamAccountName, Mail | Export-csv -path GROUPNAME .csv -NoTypeInformation
Wednesday, May 30, 2018
[Code Snippet] How to a create user in arcgis portal with a custom role?
Create a user or add member in ArcGIS portal with a custom role -
1. Get all custom roles from the portal, I presumed that the portal already has custom roles other than (org_user, org_publisher, org_admin)
from arcgis.gis import *
gis= GIS(portalUrl, userName, password)
allRoles = gis.users.roles.all(max_roles=50)
2. Create a User with Default Role
username="test"
password=''
firstname='test_name'
lastname='test_last'
email='test@test.com'
description = 'Test Account'
role = 'org_publisher'
provider = 'enterprise'
idp_username = 'test'
level = 2
thumbnail = None
newUser = gis.users.create(username, password,firstname,
lastname, email, description, role, provider,
idp_username, level, thumbnail)
3. Update the defualt role to Custom Role - Assign the role object not role name
#Assigning the first role out of many portal roles, as an example
status = newUser.update_role(role=allRoles[0])
print(status)
If role assigned success, the value of status will be True.
Reference:
https://developers.arcgis.com/python/guide/accessing-and-managing-users/
1. Get all custom roles from the portal, I presumed that the portal already has custom roles other than (org_user, org_publisher, org_admin)
from arcgis.gis import *
gis= GIS(portalUrl, userName, password)
allRoles = gis.users.roles.all(max_roles=50)
2. Create a User with Default Role
username="test"
password=''
firstname='test_name'
lastname='test_last'
email='test@test.com'
description = 'Test Account'
role = 'org_publisher'
provider = 'enterprise'
idp_username = 'test'
level = 2
thumbnail = None
newUser = gis.users.create(username, password,firstname,
lastname, email, description, role, provider,
idp_username, level, thumbnail)
3. Update the defualt role to Custom Role - Assign the role object not role name
#Assigning the first role out of many portal roles, as an example
status = newUser.update_role(role=allRoles[0])
print(status)
If role assigned success, the value of status will be True.
Reference:
https://developers.arcgis.com/python/guide/accessing-and-managing-users/
Friday, May 25, 2018
[Code Snippet] Find Custom Role of users that are in ArcGIS portal - ArcGIS
from arcgis.gis import *
self.portalInfo = GIS(self.portalUrl, self.userName, self.password)
self.portalUsers = self.portalInfo.users.search('')
users = self.portalUsers
roleManager = arcgis.gis.RoleManager(self.portalInfo)
roles = roleManager.all()
for user in users:
if hasattr(user,'roleId'):
for role in roles:
if(user.roleId == role.role_id):
print(user.username,user.role,role.name)
Remote debug environment setup for ArcGIS server extensions- SOE and SOI
In order to debug the ArcGIS server extension SOE/SOI from your development machine, you have to follow 3 steps:
1. Enable remote debug ( Presumption is your development machine and GIS server are different machines)
2. Enable sever extension for debug
3. Attach debugger to the process running the service
Download and install the remote debuggin tools from - https://docs.microsoft.com/en-us/visualstudio/debugger/remote-debugging
A. Enable remote debug
1. Download and configure Remote tools on the development
a. Find msvsmon.exe in the directory matching your version of Visual Studio. For Visual Studio 2015:
Program Files\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger\x64\msvsmon.exe
(x64 can debug both x86 and x64 but x86 can only debugs x86)
2. On the remote computer, copy Remote Debugger folder from development machine and put in C:\ drive. Then, run msvsmon.exe
3. The msvsmon.exe output terminal shows
Wednesday, April 11, 2018
Code snippet: Get DateTime from UTC timestamp in ArcGIS Online
ArcGIS Online stores all date values in UTC. A short snippet to convert UTC timestamp to DateTime using Python.
from datetime import datetime
utcTimeStamp = 1472218452855
date = datetime.fromtimestamp(utcTimeStamp / 1e3)
print(date)
output: 2016-08-26 09:34:12.855000
from datetime import datetime
utcTimeStamp = 1472218452855
date = datetime.fromtimestamp(utcTimeStamp / 1e3)
print(date)
output: 2016-08-26 09:34:12.855000
Thursday, April 5, 2018
Override Default Location of Jupyter Notebook file
This post is continue of ArcGIS Pro, Conda, Jupyter Setup post. The default location of Jupter Notebook IronPython (*.ipynb) file is C:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3 -
import os
print (os.getcwd())
import os
print (os.getcwd())
To change the default location of Jypyter notebook script file(*ipynb) you need to configure jupyter_notebook_config.py
Tuesday, April 3, 2018
ArcGIS Pro, Conda, Jupyter, and ArcGIS for Python setup
A. Download and install
the ArcGIS pro as described http://pro.arcgis.com/en/pro-app/get-started/install-and-sign-in-to-arcgis-pro.htm
B. Installation of Jupyter and ArcGIS for Python API can be done in two ways.
1.
Using ArcGIS
Pro’s Python Package Manager Graphical User Interface ( uses Conda under the
hood)
2.
Using Conda via Python Command Prompt
ii. Select packages you would like to install
Tuesday, February 6, 2018
ArcGIS Server Rest End Point POST parameters for Create Replica for ArcGIS collector
Post Params list -
- replicaName:test_02_32_Feb6_2018
- layers:26
- layerQueries:
- geometry:{"rings": [[[-9074894.9, 3341138.1], [-9045657.8, 3341176.3], [-9045657.8, 3320500.1], [-9074818.5, 3320538.3], [-9074894.9, 3341138.1]]], "spatialReference": {"wkid": 3857}}
- geometryType:esriGeometryPolygon
- inSR:
- replicaSR:
- transportType:esriTransportTypeUrl
- returnAttachments:false
- returnAttachmentsDataByUrl:true
- attachmentsSyncDirection:none
- async:false
- syncModel:perLayer
- dataFormat:sqlite
- replicaOptions:
- f:pjson
Monday, February 5, 2018
Subscribe to:
Posts
(
Atom
)