Numéro de bogue | BUG-000096129 |
Envoyé | Apr 27, 2016 |
Modified | Jul 20, 2022 |
Gravité | High |
S’applique à | ArcGIS GIS Server |
Version trouvée | 10.4 |
Langage de programmation | N/D |
Plateforme serveur | Windows OS 2008 R2 |
Plateforme client | Windows OS 2008 R2 |
Base de données | Oracle |
Paramètre régional | N/D |
Statut |
Fixed
Learn more |
Version corrigée | 10.5.0 |
Résolu par le fournisseur | 10.5 Approved |
Bogue BUG-000096129
Synopsis
When publishing a map service containing a XY event layer that is created from an enterprise geodatabase table, the layer fails to publish and results in this error: "Error 001487: Failed to update the published service with the server-side data location."
Informations supplémentaires
N/D
Autre solution
SQL Server work around:
Instead of using the XY event layer, construct a geometry or geography field based on the X and Y data in the database, and create a query layer using the new table.
Oracle work around:
--Create function to return the XY data as SDO shape (REQUIRED)
create or replace function get_long_lat_pt(longitude in number,
latitude in number,
srid in number)
return SDO_GEOMETRY deterministic is
begin
return sdo_geometry(2001, srid,
sdo_point_type(longitude, latitude, NULL),NULL, NULL);
end;
/
--Create sample data
create table xy (x number(38), y number(38), oid number(10));
insert into xy values (1,1,1);
insert into xy values (2,2,2);
insert into xy values (3,3,3);
insert into xy values (4,4,4);
--Enter the geographic metadata info
insert into user_sdo_geom_metadata values('XY',
'sde.get_long_lat_pt(x,y,4326)',
sdo_dim_array(
sdo_dim_element('Longitude', -180, 180, 0.005),
sdo_dim_element('Latitude', -90, 90, 0.005)), 4326);
--Create Function Based Index to work around ArcMap limitation of Spatial Index requirement
create index xy_spidx on
xy(get_long_lat_pt(x,y,4326))
indextype is mdsys.spatial_index;
--Query Layer:
select get_long_lat_pt(x,y,4326) as shape, oid from xy;