|
POST
|
Currently, I am conducting a massive survey involving hundreds of surveyors (around 200). Right now, I use only 1 account in Portal (Creator type) to be used for login to all surveyors. After succesfull login, the surveyor will then choose their own name based on dropdown list. All users can see their target data (points to be surveyed) and as well as other data that do not belong to them. This survey is going well if all surveyors are trustworthy and no one is monkeying around. I know this is *real bad* but I have no way around. The real downside of this are : - multiple users using the same login. - hard to do data separation. Separation of data between users can not be done individually. This will lead to fraudulant event conducted by other users who, for some reasons, being expelled from the survey and then doing data tampering. I really need to separate user login to our portal (1 user for 1 Portal login account). How can I overcome this ? Even the highest license (Arcgis Enterprise Advance) only has maximum 50 Creator accounts
... View more
06-01-2025
06:50 PM
|
0
|
5
|
1637
|
|
POST
|
@VinceAngelo wrote: @yockee wrote: The survey user is portal user and it does not have any connection with database user. Am I wrong ? The map service should NOT be published using table owner authentication. Which means that you need to validate your trigger function in pgAdmin while logged in as the publishing user. - V The map service should NOT be published using table owner authentication. --> Ok. Noted. Thanks for the advice. Which means that you need to validate your trigger function in pgAdmin while logged in as the publishing user. --> OK, noted.. Question is, with the same setup, why does the trigger only work when it does not involve any GUID or ObectID recording ? Trigger works fine if I want to record just the date of data when it is entried, which means it does not involve any recording of GUID nor ObjectID. I think the problem is that my function does not have enough information about parameters that are passed to it. I don't have any idea how the data is updated in Field Map or Survey123, what are the parameters fed into them? How can they (Field Map / Survey123) know which record is updated ?
... View more
05-13-2025
08:11 PM
|
0
|
0
|
1654
|
|
POST
|
Thanks @VinceAngelo . The survey user is portal user and it does not have any connection with database user. Am I wrong ? I have been using a different database trigger in the previous project with the same setup. for example, a trigger to fill in a coloumn wherenever there is an insert / update on another coloumn. Checkout the function below. It works just fine eventhough the table is updated via Survey123 or FieldMap. I think its because it does not involve recording of any OLD OID nor OLD GUID. It merely update new data into a coloumn without needing to know about the OID nor GUID : CREATE TRIGGER xxupd_building_utility BEFORE INSERT OR UPDATE ON owner_gis.bnp_survey FOR EACH ROW EXECUTE FUNCTION public.xupd_building(); CREATE OR REPLACE FUNCTION public.xupd_building() RETURNS trigger LANGUAGE 'plpgsql' COST 100 VOLATILE NOT LEAKPROOF AS $BODY$ BEGIN IF new.building_customer <> 'YES' THEN new.building_function := (CAST(coalesce(new.col1, '0') AS integer)+CAST(coalesce(new.col2, '0') AS integer)+CAST(coalesce(new.col3, '0') AS integer)); END IF; RETURN new; END; $BODY$; ALTER FUNCTION public.xupd_building() OWNER TO postgres; The difference with what I am trying to do is in the recording of OID or GUID. I just have to find a way to know which data with corresponding OID or GUID is changing
... View more
05-07-2025
12:53 AM
|
0
|
2
|
1709
|
|
POST
|
The trigger / function works fine if I use "INSERT" or "UPDATE" statement from pgadmin (actually, I am using the trigger for UPDATE event only). But the function failed to execute whenever there is update from Field Map or Survey123. Survey123 throws error. As soon as I disable the trigger, Survey123 works normal again. I just want to record objectid or globalid along with date field to another nonspatial table. I don't need to record any spatial attributes. Another question, where can I see the log for Survey123 ? Is it via Server Manager ? Thanks
... View more
04-16-2025
08:32 PM
|
0
|
1
|
1816
|
|
POST
|
What if the table is not versioned ? I tried to record changes to a non-versioned table by copying some attributes (non spatial, just ordinary attribute data) to another table using triger (after update) whenever there is update. The trigger works fine on non-spatial table.
... View more
04-15-2025
01:51 AM
|
0
|
0
|
1407
|
|
POST
|
I want to record an insert or update events happening on one spatial table into another table (non spatial) for simple historical purpose. Say for example I have 2 tables SpatialA (date1 DATE, guid VARCHAR38, objectid INT, col1 VARCHAR5 ,shape) and NonSpatialB (date1 DATE, guid VARCHAR38, objectid INT, col1 VARCHAR5). I have trigger on SpatialA table that executes function : CREATE OR REPLACE FUNCTION function_copy() RETURNS TRIGGER AS $BODY$ BEGIN INSERT INTO schema1.NonSpatialB (date1 ,*objectid*) //schema1.NonSpatialB (date1 ,*GUID*) --> I also tried using "GUID" as well VALUES(new.date1,new.objectid); RETURN new; END; $BODY$ language plpgsql; CREATE TRIGGER trig_copy AFTER INSERT ON schema1.SpatialA FOR EACH ROW EXECUTE PROCEDURE function_copy(); The data on SpatialA are updated via Survey123 or FieldMap. When the trigger is enabled, I CANNOT insert nor update a record on SpatialA. The trigger prevents the update or insert event from happening. How do I suppose to write the function so that I can insert into another table? Note: those trigger and function work perfectly when I do insert or update on non spatial table I am using Postgresql13, Arcgis Enterprise 11.0
... View more
04-14-2025
08:41 PM
|
0
|
6
|
1870
|
|
POST
|
I have a user called "user1" that creates a non-spatial table (it just contains tabular data) on SCHEMA-x on Postgresql. Now, I want to register this table so that the geodatabase can read it. Here is the privilege that I have granted: GRANT USAGE ON SCHEMA sde TO user1; GRANT USAGE ON SCHEMA SCHEMA-x TO user1; GRANT SELECT, INSERT, UPDATE, DELETE ON new_table TO sde; I login to SDE from Arcgis Pro 11.0 using the owner of SCHEMA-x . I then use tool Register With Geodatabase. This comes up "ERROR 160228: The user does not have permission to execute the operation." So, what do I miss ?
... View more
01-22-2025
12:53 AM
|
0
|
2
|
955
|
|
POST
|
Ok, got it Vince. So, if I have to choose a replication method, what would be the best ? One way or Two way ? thanks
... View more
01-21-2025
04:23 PM
|
0
|
1
|
995
|
|
POST
|
What is the best replication scenario for Feature Service that has picture attachment ? This feature Layer is consumed by Field Map / Survey123 I want to create a backup so that if there is emergency, I can restore it quickly. thanks
... View more
01-21-2025
01:01 AM
|
0
|
3
|
1050
|
|
POST
|
I am trying to do an example here : https://developers.arcgis.com/javascript/latest/sample-code/intro-layers/ I replace these parts: <link rel="stylesheet" href="https://js.arcgis.com/4.31/esri/themes/light/main.css" />
<script src="https://js.arcgis.com/4.31/"></script> with my own hosted js on my laptop using XAMPP: <link rel="stylesheet" href="http://localhost/javascript/api/4.31/esri/themes/light/main.css" />
<script src="http://localhost/javascript/api/4.31/"></script> Note: the locally hosted JS scripts are on "http", not "https" I add my own layer hosted on Geoportal on our company web server on this part "const featureLayer = new FeatureLayer({" : so it becomes like this: const featureLayer = new FeatureLayer({
url: "https://companywebserver.com/server/rest/services/Survey/Boundary/FeatureServer/0"
}); This web server can be accessed from outside. All links hosted on localhost (script and feature service) work correctly and can be accessed. They give out the same output as the script hosted on arcgis.com The apps works without problem if I use the script hosted on "js.arcgis.com". The FeatureService is loaded successfully. There is popup window requesting login to the Portal item (feature service). This is because I dont use token I guess, but its fine. But, It does not work using locally hosted JS. Here are the errors: 1). Uncaught SyntaxError: Unexpected token '<' (at VM709:1:1) 2). (index):1 Uncaught SyntaxError: Unexpected token '<' (at (index):1:1) 3). There is info on AutoClicker.JS saying "AutoClicker initilize complete" Note: Both errors 1 & 2 point to "<!DOCTYPE html>" Here is the screenshot about the error: Now, to avoid those errors above, I add "type="text/JSX"" to the script tag. They now become: <link rel="stylesheet" href="https://js.arcgis.com/4.31/esri/themes/light/main.css" type="text/JSX"/>
<script src="https://js.arcgis.com/4.31/" type="text/JSX"></script> The first 2 errors do not appear. The warning about autoclicker still persist. But there is nothing on the display. It is just a blank white display. The only difference between using JS hosted locally and hosted on arcgis.com is the login popup to the Feature Service hosted on local Geoportal. What seems to be the problems ? How can I fix this ? Many thanks. Need some advice.
... View more
01-16-2025
07:58 PM
|
0
|
0
|
818
|
|
POST
|
I am having trouble in finding map extent (bounding box). How can I easily find out the extent and its format ? Suppose I have this code sample: const view = new MapView({
container: "viewDiv",
map: map,
extent: {
// autocasts as new Extent()
xmin: -9177811,
ymin: 4247000,
xmax: -9176791,
ymax: 4247784,
spatialReference: 102100 I want to direct the extent (xmin/max, ymin/max) to a particular city with spatial reference 102100. How to do that ? And also, spatialReference 102100 (line 11) is deprecated and changed to EPSG 3857. (https://spatialreference.org/ref/esri/102100/) . Do I have to change the "spatialReference: 102100" to "spatialReference: 3857" ? Thanks
... View more
01-15-2025
07:26 PM
|
0
|
1
|
920
|
|
POST
|
Hi @George_Thompson , I found an article somewhere that after applying the patch, the problem still persist. So, I am not taking the risk. I just found the work arounds: 1. Using downgraded Opera and turn off the auto updater. OR 2. Using downgraded Chrome (v 104) : turn off autoupdater and modify the registry: - rename the autoupdater file to anything you want (I just add sufix "OFF") on the installation directory. This will make the autoupdater fail to run, which is what we want - find a key on the registry somewhere in "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Google\Update" set the Default to 0 Hope it helps.
... View more
01-07-2025
12:49 AM
|
0
|
0
|
1645
|
|
POST
|
I want to create materialized view on arcgis pro 3.1.0 using postgres 13 and Enterprise 11.0. How to do this ? All I find is : https://pro.arcgis.com/en/pro-app/3.2/help/sharing/analyzer-warning-messages/24139-creating-a-materialized-view-or-snapshot-is-recommended-for-query-layer.htm I can not find article / tutorial about it. Please guide me to a correct material / reading. Thanks
... View more
12-15-2024
11:42 PM
|
0
|
1
|
1112
|
|
POST
|
Hi @VinceAngelo do I have to turn off the corresponding map service, stop editing using DML queries and quit any arcgis pro apps that access the feature class during the index rebuild ? Thanks
... View more
12-01-2024
11:14 PM
|
0
|
1
|
1728
|
|
POST
|
I have these error and I am willing to fix it by setting the rowid value to its maximum+1. These errors happen when I try to add an attachment photo as attachment: Error: Underlying DBMS error [ERROR: duplicate key value violates unique constraint "r83_sde_rowid_uk" DETAIL: Key (attachmentid)=(801) already exists. (akt_survey.akt_gis.sur_property__attach)::SQLSTATE=23505] [Survey_Property__ATTACH]. Error: Underlying DBMS error [ERROR: duplicate key value violates unique constraint "r83_sde_rowid_uk" DETAIL: Key (attachmentid)=(1201) already exists. (akt_survey.akt_gis.sur_property__attach)::SQLSTATE=23505] [Survey_Property__ATTACH]. Error: Underlying DBMS error [ERROR: duplicate key value violates unique constraint "r83_sde_rowid_uk" DETAIL: Key (attachmentid)=(1202) already exists. (akt_survey.akt_gis.sur_property__attach)::SQLSTATE=23505] [Survey_Property__ATTACH] what happened before was: 1. I have polygon that already contains attachment, namely OLDPOLY 2. Convert these polygon into point using Feature to Point. I name this FC as NEWPOINT 3. Enable attachment on this NEWPOINT 4. Load all attachment using sql query from OLDPOLY to NEWPOINT: Insert Into NEWPOINT select * from OLDPOLY 5. Publish this NEWPOINT as feature service and create apps using FieldMap 6. Begin updating data. I take a new picture and try to upload it. Then those errors come up. I do a query "select max(attachmentid) from sur_property__attach" . It says 300800. It seems that the sequence needs to be moved to the maximum value of current attachmentid (300800) + 1. How can I solve this problem ? How to find that "r83_sde_rowid_uk" ? i am using Postgresql geodatabase
... View more
11-25-2024
07:50 PM
|
0
|
0
|
706
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 11-25-2024 12:33 AM | |
| 1 | 11-21-2025 12:57 AM | |
| 1 | 11-12-2024 08:22 PM | |
| 1 | 10-13-2024 11:55 PM | |
| 1 | 02-25-2022 05:49 AM |
| Online Status |
Offline
|
| Date Last Visited |
02-04-2026
05:39 PM
|