POST
|
Philip Heede, Thanks for the recommendation! I used the Cloud Builder to set up my first VM in Azure, It worked really well. Now I'm exploring ways to script the creation of both the VM and the instillation of the software and Chef seems to be the way to do that. I think last time I looked at it Cloud Builder couldn't be used with python or another language if that has changed it would be a lot easier than learning Chef! Thanks, Chris
... View more
05-07-2018
11:26 AM
|
0
|
1
|
1482
|
POST
|
There is a SetupFile folder, but it is in the directory C:\Users\UserProfile\Documents\ArcGIS 10.5\ArcGISServer\SetupFiles. Should it be somewhere else? Thanks! Chris
... View more
05-02-2018
01:44 PM
|
0
|
1
|
1482
|
POST
|
Hey Randall Williams, Thanks for the reply! Sorry I'm probably going to ask some very basic questions but this is my first time using Chef. The first few times I ran the command chef-solo -j C:\chef\roles\webgis-windows.json errors indicated that the path C:\ArcGIS\10.5\Server\Setup.exe did not exist, so I created that on the VM and placed the Setup.exe there for ArcGIS Server. This made the command run for a little bit longer until I got to what you see in my original post. Does the Chef cookbook from ESRI's GitHub come with the ability to install ArcGIS Server without the Setup.exe? Maybe more generically what steps need to be taken in addition to installing the chef client and the ESRI Cookbook on the VM so that they will run? Thanks for the help!
... View more
05-02-2018
07:19 AM
|
0
|
3
|
1482
|
POST
|
Hello All, I am testing out Chef for installing ArcGIS Server on an Azure Virtual Machine as a way to standardize our deployment or ArcGIS Server. I started by following the instructions found in both the YouTube video from ESRI ArcGIS Enterprise: Automating Installation and Configuration - YouTube and the instructions found on ESRI's Github site for Chef Cookbooks Deploy a full stack ArcGIS Enterprise on a single machine · Esri/arcgis-cookbook Wiki · GitHub. When watching the video it looks like the chef cookbook runs until ArcGIS Server is installed completely. However when I run the same command it opens the ArcGIS installation window which has buttons you need to click to proceed with the installation, you can see this below. I'm wondering if someone can give me some direction on why this is happening? Ideally it would not because it goes on to prompt the entering of usernames and passwords which are in the .json file... Any help would be awesome!! Thanks, Christopher
... View more
05-01-2018
01:33 PM
|
1
|
13
|
2282
|
POST
|
alanabaker Thanks! Do you know if I write and option file to limit the use of network analyst and add it to the License Server Manager will the rest of the licensing of desktop and other extensions still work from the License Server just like they did before the option file?
... View more
04-16-2018
11:32 AM
|
0
|
2
|
864
|
POST
|
rborchert Sorry, I dint really fully explain in my original post but we have a concurrent license of Network Analyst that many users are able to access. Now we have a python script that will run every night and the AD account will need to always have access to Network Analyst. So I'm hoping we can use the option file to limit the use of one license to the python script.
... View more
04-16-2018
11:30 AM
|
0
|
0
|
864
|
POST
|
Hey All, We are using concurrent use licenses that are managed by a license manager, however now we have a scenario where we need to limit a Network Analyst license so that only one user can use it. I think that this can work by using an Option File but wanted to see if anyone had experience with this? Thanks, Chris
... View more
04-16-2018
07:13 AM
|
1
|
6
|
1066
|
POST
|
This is very helpful! Just to confirm the fields that could be used in a barrier are the ones found in the Attributes of the Network Dataset? So if I have Cost, Length, Minutes, and Oneway those could each but represented as Attr_Cost, Attr_Lenght, Attr_Minutes, and Attr_Oneway. Thanks, Chris
... View more
04-10-2018
08:46 AM
|
0
|
2
|
1068
|
POST
|
I'm working on building a Network Dataset and want to include polygon Network Barriers. When researching the fields that should be included in a barrier all I can find is that there should be and Attribute_Impedance with one example Attr_Minutes. I'm guessing there are other fields that could be added but can't find documentation that states that. Does any one know of documentation that specifies what are other attribute possibilities? This is where I'm currently looking and found documentation about polygon barriers and the field Attr_Minutes. Barriers—Help | ArcGIS Desktop Thanks, Chris
... View more
04-10-2018
06:52 AM
|
1
|
4
|
1606
|
POST
|
I found this post on gis.stackexchange that had a similar problem turns "Polygon, polyline, or multipoint features can only be created using the SHAPE@ token." so appending the SHAPE@ field onto my list of fields before doing any cursors seems to have fixed my problem. def creatingMatchingFieldList(fc1, fc2):
lst1 = [fld.name for fld in arcpy.ListFields(fc1)]
lst2 = [fld.name for fld in arcpy.ListFields(fc2)]
return list(set(lst1) & set(lst2))
def createWhereClause(fc, fld_name, value):
"""
Should return 'GGMID = 20412.0'
can be some other value...
"""
logger.info(fc)
logger.info(fld_name)
logger.info(value)
if len(arcpy.ListFields(fc, fld_name)) == 1:
fld = arcpy.ListFields(fc, fld_name)[0]
logger.info(fld.name)
logger.info(fld.type)
if fld.type == "String":
where = "{0} = '{1}'".format(arcpy.AddFieldDelimiters(fc, fld_name), value)
else:
where = "{0} = {1}".format(arcpy.AddFieldDelimiters(fc, fld_name), value)
return where
def getPrimaryFieldValues(fc, field):
return [r[0] for r in arcpy.da.SearchCursor(fc, [field])]
def getSelectCursor(fc, flds, whereClause):
return arcpy.da.SearchCursor(fc, flds, whereClause)
def diff(a, b):
return list(set(a) - set(b))
try:
logger.info("Creating a list of field names that are in both fcs...")
flds = creatingMatchingFieldList(NewStreets, OLDStreets)
# FIX
flds.append('SHAPE@')
logger.info(flds)
sourceValues = getPrimaryFieldValues(NewStreets, fieldName)
destinationValues = getPrimaryFieldValues(OLDStreets, fieldName)
additions = diff(sourceValues, destinationValues)
deletions = diff(destinationValues, sourceValues)
workspace = NetworkDatasetGDB
logger.info("Creating the insert cursor and adding the New street lines to the Old Street Lines...")
with arcpy.da.Editor(workspace) as edit:
insertRows = []
for a in additions:
logger.info(a)
where = createWhereClause(NewStreets, fieldName, a)
logger.info(where)
Row = getSelectCursor(NewStreets, flds, where)
insertRows.append(Row)
logger.info(insertRows)
with arcpy.da.InsertCursor(OLDStreets, flds) as insertCursor:
for rec in insertRows:
for r in rec:
logger.info(r)
insertCursor.insertRow(r)
#edit.stopEditing(True)
logger.info("Creating the update cursor and updating the old Street Lines with the values from the new Street Lines...")
with arcpy.da.Editor(workspace) as edit:
for d in deletions:
where = createWhereClause(OLDStreets, fieldName, d)
logger.info(where)
with arcpy.da.UpdateCursor(OLDStreets, flds, where) as deleteCursor:
logger.info(d)
for d in deleteCursor:
deleteCursor.deleteRow()
... View more
03-19-2018
11:11 AM
|
0
|
0
|
317
|
POST
|
Good afternoon, I've been working on a script that will compare two different feature classes and move changes from the one that has been edited to the target feature class. I got most of my logic from this forum post Comparing Two Feature Classes and Updating One of Them. The script is working but it leaves out the actual geometry so all that is left in the Shape_Length field is "0" so I get records in the table but no actual geometry. You can see in the below images the zeros and the street that should be copied to the target feature class the green line should be covered by the records that have a zero in the Shape_Length field. I think there is something wrong with the search cursor/insert cursor that I'm using but not 100% sure. My code is below. def creatingMatchingFieldList(fc1, fc2):
lst1 = [fld.name for fld in arcpy.ListFields(fc1)]
lst2 = [fld.name for fld in arcpy.ListFields(fc2)]
return list(set(lst1) & set(lst2))
def createWhereClause(fc, fld_name, value):
"""
Should return 'GGMID = 20412.0'
can be some other value...
"""
logger.info(fc)
logger.info(fld_name)
logger.info(value)
if len(arcpy.ListFields(fc, fld_name)) == 1:
fld = arcpy.ListFields(fc, fld_name)[0]
logger.info(fld.name)
logger.info(fld.type)
if fld.type == "String":
where = "{0} = '{1}'".format(arcpy.AddFieldDelimiters(fc, fld_name), value)
else:
where = "{0} = {1}".format(arcpy.AddFieldDelimiters(fc, fld_name), value)
return where
def getPrimaryFieldValues(fc, field):
return [r[0] for r in arcpy.da.SearchCursor(fc, [field])]
def getSelectCursor(fc, flds, whereClause):
return arcpy.da.SearchCursor(fc, flds, whereClause)
def diff(a, b):
return list(set(a) - set(b))
try:
logger.info("Creating a list of field names that are in both fcs...")
flds = creatingMatchingFieldList(NewStreets, OLDStreets)
flds.append('SHAPE@LENGTH')
#flds.append('SHAPE')
flds.append('Shape_Length')
logger.info(flds)
sourceValues = getPrimaryFieldValues(NewStreets, fieldName)
destinationValues = getPrimaryFieldValues(OLDStreets, fieldName)
additions = diff(sourceValues, destinationValues)
deletions = diff(destinationValues, sourceValues)
workspace = NetworkDatasetGDB
logger.info("Creating the insert cursor and adding the New street lines to the Old Street Lines...")
with arcpy.da.Editor(workspace) as edit:
insertRows = []
for a in additions:
logger.info(a)
where = createWhereClause(NewStreets, fieldName, a)
logger.info(where)
Row = getSelectCursor(NewStreets, flds, where)
insertRows.append(Row)
logger.info(insertRows)
with arcpy.da.InsertCursor(OLDStreets, flds) as insertCursor:
for rec in insertRows:
for r in rec:
logger.info(r)
insertCursor.insertRow(r)
#edit.stopEditing(True)
logger.info("Creating the update cursor and updating the old Street Lines with the values from the new Street Lines...")
with arcpy.da.Editor(workspace) as edit:
for d in deletions:
where = createWhereClause(OLDStreets, fieldName, d)
logger.info(where)
with arcpy.da.UpdateCursor(OLDStreets, flds, where) as deleteCursor:
logger.info(d)
for d in deleteCursor:
deleteCursor.deleteRow() If anyone has an idea why the the actual shape is not being inserted with the insert cursor that would be awesome! Thanks, Christopher Long
... View more
03-16-2018
12:41 PM
|
1
|
2
|
453
|
POST
|
Hey Dave, Do you know what your session is called and what your presentation time is? I would love to come see how you do this! Thanks, Chris
... View more
06-08-2017
08:09 AM
|
0
|
0
|
896
|
POST
|
Hi all, We are looking for ESRI's best practices for storing and replicating Parcel Fabric in an SDE geodatabase. I've found lots of help but not a best practices doc with diagrams. Does this exist? Thanks! Chris
... View more
06-06-2017
09:06 AM
|
0
|
2
|
736
|
Title | Kudos | Posted |
---|---|---|
1 | 05-01-2018 01:33 PM | |
1 | 04-16-2018 07:13 AM | |
1 | 04-10-2018 06:52 AM | |
1 | 03-16-2018 12:41 PM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:25 AM
|