POST
|
Lanzamos el planteo al proveedor local, y este nos contesto, que existe un issue planteado sin resolución previo, y nos recomendó ir por el workaround de pedir otro usuario o recrear el que teníamos. El área de seguridad nos proveyó un nuevo usuario y funciona. Gracias a @EdwinRoa y @MichaelVolz por la ayuda.
... View more
05-16-2025
10:45 AM
|
0
|
0
|
118
|
POST
|
Funciona, hasta el primer ejemplo import arcpy aprx = arcpy.mp.ArcGISProject(r'D:\Repo\VRed\main\project\Scripts\Publicar\MiniTest.aprx') result=aprx.updateConnectionProperties(r'D:\Repo\VRed\main\project\Conexiones\SDE@MUGISD.sde', r'D:\Repo\VRed\main\project\Conexiones\SDE@MUGIST.sde',False,False,True) print(result) aprx.saveACopy(r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTestNew.aprx") Cambia perfecto la conexion en el APRX, sin esos 3 parametros no funciona. No me puse a ver cual de los 3 es el responsable. Gracias @TonyAlmeida , gracias @DanPatterson , por la ayuda, y espero les sirva a muchos, porque veo que hay mucha gente buscando solución a este tema.
... View more
05-09-2025
12:06 PM
|
1
|
0
|
258
|
POST
|
Novedad!!!! lyr.updateConnectionProperties(old, new)--> no hace nada, en todas las convinaciones que hicimos, pero .... lyr.updateConnectionProperties(old, new,"",False)-- Graba!!!, modifica el lyr y luego de save, el aprx, voy a probar todo lo que hicimos con estos 2 parametros, que buscando que son: updateConnectionProperties (current_connection_info, new_connection_info, {auto_update_joins_and_relates}, {validate}, {ignore_case}) auto_update_joins_and_relates If set to True, the updateConnectionProperties method will also update the connections for associated joins or relates. (The default value is True) Boolean validate If set to True, the connection properties will only be updated if the new_connection_info value is a valid connection. If it is not valid, the connection will not be replaced. If set to False, the method will set all connections to match the new_connection_info value, regardless of a valid match. In this case, if a match does not exist, the data sources would be broken. (The default value is True) Boolean ignore_case Determines whether searches will be case sensitive. By default, queries are case sensitive. To perform queries that are not case sensitive, set ignore_case to True. (The default value is False) Boolean También es raro que me tome el 3er parámetro "", segun la documentación de arcgis Pro 3.4 única online, estamos trabajando con 3.1.6 Es un avance, el aprx igual no anda, tira un signo de exclamación a la BD, pero fue modificado.
... View more
05-09-2025
08:27 AM
|
0
|
1
|
200
|
POST
|
Intente, Tony, nada hace nada. Primer ejemplo: import arcpy import os # Set your paths project_path = r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTest.aprx" # Or full path to your APRX file project_path_new=r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTestNew.aprx" old_gdb = r"D:\Repo\VRed\main\project\Conexiones\SDE@MUGISD.sde" new_gdb = r"D:\Repo\VRed\main\project\Conexiones\SDE@GISTECOD.sde" # Open the ArcGIS project aprx = arcpy.mp.ArcGISProject(project_path) nroLys=0 # Iterate through each map in the project for m in aprx.listMaps(): for l in m.listLayers(): nroLys=nroLys+1 print("layers nro=" + str(nroLys)) if l.supports("CONNECTIONPROPERTIES"): try: # Get the current connection properties conProp = l.connectionProperties # Check if the layer is connected Oracle SDE connections if conProp['connection_info'].get('dbclient') == 'oracle': instance = conProp['connection_info'].get('instance', '') print(f"Layer: {l.name}, Oracle Instance: {instance}") if "MUGISD" in instance.upper(): print(f"Updating Oracle connection for layer: {l.name}") conProp['connection_info']['instance'] = instance.replace("MUGISD", "GISTECOD") print("old=" + str(l.connectionProperties['connection_info']['instance'])) result=l.updateConnectionProperties(l.connectionProperties, conProp) conProp = l.connectionProperties print("new=" + str(l.connectionProperties['connection_info']['instance'])) print(result) else: print(f"Layer {l.name} has unsupported connection type. Skipping...") except Exception as e: print(f"Error with layer {l.name}: {str(e)}") # Save the updated project aprx.saveACopy(project_path_new) print("Update complete.") SALIDA C:\Users\u194934>"C:\Program Files\ArcGIS\Pro\bin\Python\Scripts\propy.bat" D:\Repo\VRed\main\project\Scripts\Publicar\CS2.py layers nro=1 Layer: SDE.VIS_FC_EQ_HFC_LINEQ_V, Oracle Instance: sde:oracle$192.168.244.71:1529/MUGISD Updating Oracle connection for layer: SDE.VIS_FC_EQ_HFC_LINEQ_V old=sde:oracle$192.168.244.71:1529/MUGISD new=sde:oracle$192.168.244.71:1529/MUGISD None Update complete. Luego, lo simplifique, y tampoco nada graba, nada escribe en el aprx, ni da error. import arcpy import os # Set your paths project_path = r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTest.aprx" # Or full path to your APRX file project_path_new=r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTestNew.aprx" old_conex = {'connection_info': {'authentication_mode': 'DBMS', 'dbclient': 'oracle', 'db_connection_properties': '192.168.244.71:1529/MUGISD', 'password': '<*********>', 'instance': 'sde:oracle$192.168.244.71:1529/MUGISD', 'server': '192.168.244.71', 'user': 'SDE', 'version': 'SDE.DEFAULT'}} new_conex = {'connection_info': {'authentication_mode': 'DBMS', 'dbclient': 'oracle', 'db_connection_properties': '192.168.244.77:1528/GISTECOD', 'password': '<*********>', 'instance': 'sde:oracle$192.168.244.77:1528/GISTECOD', 'server': '192.168.244.77', 'user': 'SDE', 'version': 'SDE.DEFAULT'}} # Open the ArcGIS project aprx = arcpy.mp.ArcGISProject(project_path) aprx.updateConnectionProperties(old_conex,new_conex) nroLys=0 # Iterate through each map in the project for m in aprx.listMaps(): for l in m.listLayers(): nroLys=nroLys+1 print("layers nro=" + str(nroLys)) if l.supports("CONNECTIONPROPERTIES"): print("old=" + str(l.connectionProperties['connection_info']['instance'])) result=l.updateConnectionProperties(old_conex, new_conex) print(f"Updating Oracle connection for layer: {l.name}") print("new=" + str(l.connectionProperties['connection_info']['instance'])) print(result) else: print(f"Layer {l.name} has unsupported connection type. Skipping...") # Save the updated project aprx.saveACopy(project_path_new) print("Update complete.") SALIDA C:\Users\u194934>"C:\Program Files\ArcGIS\Pro\bin\Python\Scripts\propy.bat" D:\Repo\VRed\main\project\Scripts\Publicar\CS3.py layers nro=1 old=sde:oracle$192.168.244.71:1529/MUGISD Updating Oracle connection for layer: SDE.VIS_FC_EQ_HFC_LINEQ_V new=sde:oracle$192.168.244.71:1529/MUGISD None Update complete. Arcgis Pro 3.1.6 , Arcgis Server 11.1.0
... View more
05-08-2025
02:15 PM
|
0
|
0
|
240
|
POST
|
Hola Tony, mil gracias por el aporte, hice un pequeño cambio para que no pinche, y mas abajo la salida, ¿se te ocurre que puede estar pasando? import arcpy import os # Set your paths project_path = r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTest.aprx" # Or full path to your APRX file project_path_new=r"D:\Repo\VRed\main\project\Scripts\Publicar\MiniTestNew.aprx" old_gdb = r"D:\Repo\VRed\main\project\Conexiones\SDE@MUGISD.sde" new_gdb = r"D:\Repo\VRed\main\project\Conexiones\SDE@GISTECOD.sde" # Open the ArcGIS project aprx = arcpy.mp.ArcGISProject(project_path) nroLys=0 # Iterate through each map in the project for m in aprx.listMaps(): for l in m.listLayers(): nroLys=nroLys+1 print("layers nro=" + str(nroLys)) if l.supports("CONNECTIONPROPERTIES"): try: # Get the current connection properties conProp = l.connectionProperties print("conProp=" + str(conProp)) #comente la linea siguiente porque daba "Error with layer SDE.VIS_FC_EQ_HFC_LINEQ_V: 'database'" #print(f"Layer: {l.name}, Current Database: {conProp['connection_info']['database']}") # Check if the layer is connected to the old geodatabase if conProp and 'connection_info' in conProp: current_database = conProp['connection_info'].get('database', '') if current_database.lower() == old_gdb.lower(): print(f"Updating connection for layer: {l.name}") # Update the database path to the new geodatabase conProp['connection_info']['database'] = new_gdb # Apply the updated connection properties l.updateConnectionProperties(l.connectionProperties, conProp) else: print(f"Layer {l.name} is not using the old GDB. Skipping...") except Exception as e: print(f"Error with layer {l.name}: {str(e)}") # Save the updated project aprx.saveACopy(project_path_new) print("Update complete.") SALIDA: C:\Users\u194934>"C:\Program Files\ArcGIS\Pro\bin\Python\Scripts\propy.bat" D:\Repo\VRed\main\project\Scripts\Publicar\CS2.py layers nro=1 conProp={'dataset': 'SDE.VIS_FC_EQ_HFC_LINEQ_V', 'workspace_factory': 'SDE', 'connection_info': {'authentication_mode': 'DBMS', 'dbclient': 'oracle', 'db_connection_properties': '192.168.244.71:1529/MUGISD', 'password': '<*********>', 'instance': 'sde:oracle$192.168.244.71:1529/MUGISD', 'server': '192.168.244.71', 'user': 'SDE', 'version': 'SDE.DEFAULT'}} Layer SDE.VIS_FC_EQ_HFC_LINEQ_V is not using the old GDB. Skipping... Update complete.
... View more
05-07-2025
07:41 AM
|
0
|
4
|
278
|
POST
|
Gracias Dan, las conexiones también creadas por script pyhton y por las dudas utilizadas con ArcGIS Pro, para verificar. La versión actual de ArcGIS Pro es 3.1.6 y ArcGIS Server 11.1. Es muy frustrante, en 10.9.1 los sctipts funcionaban, luego de migrar y adaptarlos, nada. He levantado un ticket al distribuidor local, ojala ellos encuentren algo. Saludos, Anibal
... View more
05-06-2025
03:45 PM
|
0
|
6
|
322
|
POST
|
import arcpy aprx = arcpy.mp.ArcGISProject(r'C:\Projects\YosemiteNP\Yosemite.aprx') aprx.updateConnectionProperties(r'C:\Projects\YosemiteNP\DBConnections\Server.sde', r'C:\Projects\YosemiteNP\DBConnections\NewServer.sde') aprx.saveACopy(r"C:\Projects\YosemiteNP\YosemiteNew.aprx") Tony, Hice la prueba, y No hace nada.
... View more
05-06-2025
11:39 AM
|
0
|
0
|
360
|
POST
|
El siguiente ejemplo que esta en la ayuda, no funciona para nada no pincha , no cambia nada. import arcpy aprx = arcpy.mp.ArcGISProject(r'C:\Projects\YosemiteNP\Yosemite.aprx') aprx.updateConnectionProperties(None, r'C:\Projects\YosemiteNP\DBConnections\Server.sde') aprx.saveACopy(r"C:\Projects\YosemiteNP\YosemiteNew.aprx") ¿Alguna idea?, tengo un monton de APRX, que apuntan a la GEODATABASE de desarrollo, y debo cambiar la conexion para pasar a TESTING o PRODUCCION. Anibal Martinez
... View more
05-06-2025
10:38 AM
|
0
|
10
|
446
|
POST
|
Hola, tengo el mismo problema, sobre ArcGis Server 11.1 , y no encuentro nada sobre Defect: ENH-000156901 Lo habrán desestimado?, la verdad que estaría bueno que sume alguna información para orientar a que se debe. Saludos, Anibal
... View more
04-25-2025
06:53 AM
|
0
|
0
|
463
|
POST
|
Gracias Edwin, te confirmo que se reinicio el equipo. Tema variables de entorno no veo nada distinto, tenemos 3 ambientes ARCGIS SERVER (desarrollo/testing/produccion) , te muestro las variables de entorno que veo relevantes o asociadas a ArcGIS o python, el ambiente donde falla es PRODUCCION. Y al final hago un comentario relevante sobre esto. Desarroollo Produccion VaribaleEntorno Valor VaribaleEntorno Valor AGSDATASTORE D:\Apps\ArcGis\DataStore\ AGSDATASTORE D:\Apps\ArcGis\DataStore\ AGSPORTAL D:\Apps\ArcGis\Portal\ AGSPORTAL D:\Apps\ArcGis\Portal\ AGSSERVER D:\Apps\ArcGis\Server\ AGSSERVER D:\Apps\ArcGis\Server\ LOCALAPPDATA C:\Users\u194934\AppData\Local LOCALAPPDATA C:\Users\B000001\AppData\Local HOMEPATH \Users\u194934 HOMEPATH \Users\B000001 APPDATA C:\Users\u194934\AppData\Roaming APPDATA C:\Users\B000001\AppData\Roaming Path …; Path ..; Los ambiente desarrollo y testing, se armaron identicos que produccion , todos con el usuario B000001, en estos si entramos con ese usuario tampoco funciona , pero si entramos con cualquier otro usuario si funciona, por ser desarrollo podemos pedir y probar esto, anda, pero no hay nada que se identifique como variable de entorno que valide la licencia de arcgis Server asociado al mismo. En produccion no podemos pedir otro usuario. ¿alguna idea?,
... View more
04-16-2025
11:44 AM
|
0
|
0
|
323
|
POST
|
hola, ¿como puedo verificar eso?, es el equipo servidor donde esta instalado ArcGis Server Saludos, Anibal
... View more
04-15-2025
05:03 AM
|
0
|
0
|
351
|
POST
|
Hola en un equipo tenemos ARCGIS SERVER 11.1 , en un momento para hacer una prueba se instalo ARCGIS PRO, y luego de la misma se desinstalado, luego de esto los scripts python no encuentran la licencia de arcgis SERVER. Script de ejemplo import arcpy import os import time import sys from pathlib import Path import logging def main(): try: logging.info("Proceso iniciado...") logging.info("Aguarde que soy lento por favor...") if len(sys.argv) >= 1: msj = sys.argv[0] #el argumento 0 no se usa, trae el nombre del script usuario = sys.argv[1] conexion_sde = sys.argv[2] vista = sys.argv[3] pathErr = sys.argv[4] FC=usuario + "." + vista TBErr=pathErr + r"\ErroresEncontrados.csv" workspace = conexion_sde arcpy.env.workspace = workspace logging.info("Inicio") arcpy.management.CheckGeometry(in_features=str(FC), out_table=TBErr,validation_method="OGC") logging.info("Fin") else: msj = "Error al indicar los argumentos" logging.error(msj + "\n") msj = 'Ejemplo: D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python.exe VIS_FC_OUTAGEAREA_EDIF_V.py "A001888" "D:\DBSDE-Usar VRed-SharedTools\SDE.sde"' logging.error(msj + "\n") time.sleep(5) except Exception as e: logging.error(e) if __name__ == "__main__": main() Mensaje de Error: C:\Windows\system32>D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python.exe D:\VRED\Scripts\chequearGeometry_FC.py "SDE" "D:\VRED\SharedTools\SDE.sde" "VIS_FC_CABLES_FTTH_DIST_V" "D:\VRED\Pasajes\Anibal" Traceback (most recent call last): File "D:\VRED\Scripts\chequearGeometry_FC.py", line 1, in <module> import arcpy File "D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\Resources\ArcPy\arcpy\__init__.py", line 77, in <module> from arcpy.geoprocessing import gp File "D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\Resources\ArcPy\arcpy\geoprocessing\__init__.py", line 14, in <module> from ._base import * File "D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\Resources\ArcPy\arcpy\geoprocessing\_base.py", line 14, in <module> import arcgisscripting File "D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgisscripting\__init__.py", line 131, in <module> from ._arcgisscripting import * RuntimeError: The software is not authorized for use. C:\Windows\system32>pause Press any key to continue . . .
... View more
04-14-2025
12:04 PM
|
0
|
5
|
415
|
POST
|
Estoy ejecutando un script de python contra la Geodatabase en Oracle, ArcGis Pro 3.1.6. , ArcGis Server 11.1, la conexion la paso por un archivo .sde, y el script se conecta, si existe borra la vista (OK), luego crea la Vista (ok, query en el debug), y luego registra en metadata, ahi falla con el codigo 999999 ¿alguna idea? C:\Windows\system32>D:\Apps\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python.exe D:\VRED\Pasajes\GISA-3547\crearVista_P.py "A001888" "D:\VRED\SharedTools\SDE.sde" "VIS_FC_OUTAGEAREA_EDIF_V" 2025-04-10 10:35:08,385 - INFO - Proceso iniciado... 2025-04-10 10:35:08,385 - INFO - Aguarde por favor... 2025-04-10 10:35:11,953 - INFO - Inicio 2025-04-10 10:35:11,954 - DEBUG - WITH OUTAGES AS (SELECT table_outage.EXTERNALAREAID AS EXTERNALAREAID, MAX (STATUSTYPE) AS STATUSTYPE, LISTAGG (EQUIPMENTNAME || ' -> ' || TYPE || ' -> ' || SOURCESYSTEM || ':' || ORIGENID, CHR (10) ON OVERFLOW TRUNCATE) WITHIN GROUP (ORDER BY EQUIPMENTNAME) AS RESUME, SUM(CLIENTS) AS CLIENTS FROM( SELECT Y.EXTERNALAREAID, y.ALARMID, y.ORIGENID, y.SOURCESYSTEM, y.EQUIPMENTNAME, y.STATUSTYPE, y.STATUSCODE, y.PERCEIVEDSEVERITY, y.ALARMDETAILS, y.ALARMSTATE, y."TYPE", CASE WHEN Y."TYPE" IN ('CAJA_DE_EDIFICIO', 'CAJA_DE_EDIFICIO_FTTH') THEN 'EDIFICIO' ELSE 'AREA' END AS TYPE_OUTAGE, y.PLANT, y.CLIENTS, y.ADDRESS, y.CPE, TO_CHAR(y.OUTAGESTARTTIME, 'YYYY-MM-DD HH24:MI:SS') AS OUTAGESTARTTIME, TO_CHAR(y.ALARMREPORTINGTIME, 'YYYY-MM-DD HH24:MI:SS') AS ALARMREPORTINGTIME, TO_CHAR(y.OUTAGEENDTIME, 'YYYY-MM-DD HH24:MI:SS') AS OUTAGEENDTIME FROM A001888.VIS_OUTAGES y WHERE 1 = 1 AND y.ALARMSTATE NOT IN ('CLEARED') ) table_outage group by table_outage.EXTERNALAREAID HAVING LISTAGG(TYPE_OUTAGE, ',' ON OVERFLOW TRUNCATE) WITHIN GROUP (ORDER BY EQUIPMENTNAME) NOT LIKE '%AREA%' ), AREAS AS ( SELECT vfta.areaid AS AREAID, vfta.AREANAME AS AREACODE, vfta.AREANAME AS NAME, vfta.AREANAME AS DESCRIPTION, VFTA.SHAPE FROM sde.VIS_FC_TECHNICAL_AREAS vfta ) SELECT CAST (AREAID AS NUMBER (38, 0)) AS ID, A.AREACODE, O.RESUME, STATUSTYPE, O.CLIENTS, A.SHAPE FROM OUTAGES O, AREAS A WHERE O.EXTERNALAREAID = A.AREAID 2025-04-10 10:35:17,960 - INFO - Vista borrada correctamente 2025-04-10 10:35:19,735 - INFO - Se creo la vista 2025-04-10 10:35:19,736 - INFO - Se registra la vista... 2025-04-10 10:35:20,069 - INFO - Posee campo Shape, registrando como vista geografica... 2025-04-10 10:35:21,984 - ERROR - ERROR 999999: Something unexpected caused the tool to fail. Contact Esri Technical Support (http://esriurl.com/support) to Report a Bug, and refer to the error help for potential solutions or workarounds. Underlying DBMS error [Success] Failed to execute (RegisterWithGeodatabase). Gracias Anibal M Argentina
... View more
04-10-2025
06:48 AM
|
0
|
0
|
121
|
POST
|
Analizador de registros del sistema (0.12.17.0), no funciona, ¿no pueden simplificar la herramienta haciendo un wizard? Gracias
... View more
02-21-2025
04:43 AM
|
0
|
0
|
132
|
POST
|
Buen día, los servidores no tienen acceso a internet, por lo cual no puedo ejecutarlos, la duda es en la versión de Portal 10.9.1 , ¿debo instalar luego de correr Validación y Reparación el parche ArcGIS-1091-PFA-ESSEC-PatchB.msp? o solo los 2 siguientes : ArcGIS-1091-PFA-SEC2024U1-Patch.msp y ArcGIS-1091-PFA-AD-Partch.msp Saludos, Anibal Telecom Argentina
... View more
08-01-2024
07:32 AM
|
0
|
0
|
250
|
Title | Kudos | Posted |
---|---|---|
1 | 05-09-2025 12:06 PM | |
1 | 02-17-2021 11:07 AM | |
1 | 10-10-2023 01:10 PM | |
3 | 07-31-2023 11:08 AM | |
2 | 02-16-2022 11:59 AM |
Online Status |
Offline
|
Date Last Visited |
3 weeks ago
|