Identify Widget Link - ArcGIS Viewer Flex 3.6

4089
9
06-19-2014 12:04 PM
RichardBunten
Deactivated User
I am having an issue with the identify widget version 3.6.  I can't get the link to work with a web service that contains a point layer that has joined attributes from another MSSQL database.  The link field that I am using is called 'JurisdictionURL' and for test purposes the field has the URL http://stlouiscountymn.gov/ as an entry.  The point layer is from an Enterprise geodatabase and it has a layer name in the 'EngProjAreasPtsv3' web service called 'EngProjectAreasPtsJoin' and it has been joined to a MSSQL table named 'TBLDLHPROGRESSZONES'.  When I place the link field in the identify widget with the parameters FIELD - 'ProgressMap.dbo.TBLDLHPROGRESSZONES.JurisdictionURL', INCLUDE IN RESULTS - false, POPUP LINK TYPE - image and ICON SUFFIX - http://help.arcgis.com/en/webapps/flexviewer/live/assets/images/i_camera.png  .  All the other fields are left blank.  When I run the Flex App and IDENTIFY a particular point, I can see all the attributes, but there is no image to click on for the 'JurisdictionURL'.

However, when I create a web service that pulls from a File geodatase that uses an exported feature class of the joined points and attribute data the identify tool and link work correctly.  The image shows up at the bottom of the identify dialog and when I click on the image a new tab is created in the browser that goes to the specified website.

I think there is some issue with the long field names that ArcGIS generates when joined to the table.

Any ideas on how I can solve this problem?
Tags (2)
0 Kudos
9 Replies
RobertScheitlin__GISP
MVP Emeritus
Richard,

  Somehow your xml got all jacked up.

        <layer>
            <name>EngProjectAreasPtsJoin</name>
            <id>1</id>
            <url>http://cihl-gisapp-t3:6080/arcgis/rest/services/EngProjAreasPtsv3/MapServer</url>
            <fields>
                <field name="sde.SDE.engProjectAreasPts.OBJECTID" alias="OBJECTID"/>
                <field name="sde.SDE.engProjectAreasPts.Proj_Num" alias="Project Number"/>
                <field name="sde.SDE.engProjectAreasPts.Proj_Type" alias="Project Type"/>
                <field name="sde.SDE.engProjectAreasPts.Juris" alias="Jurisidiction"/>
                <field name="sde.SDE.engProjectAreasPts.Contractor" alias="Contractor"/>
                <field name="sde.SDE.engProjectAreasPts.Sanitary" alias="Sanitary"/>
                <field name="sde.SDE.engProjectAreasPts.Storm" alias="Storm"/>
                <field name="sde.SDE.engProjectAreasPts.Water" alias="Water"/>
                <field name="sde.SDE.engProjectAreasPts.Gas" alias="Gas"/>
                <field name="sde.SDE.engProjectAreasPts.Display" alias="Display"/>
                <field name="sde.SDE.engProjectAreasPts.Spec" alias="Spec"/>
                <field name="sde.SDE.engProjectAreasPts.Proj_Status" alias="Proj_Status"/>
                <field name="sde.SDE.engProjectAreasPts.Construction_Year" alias="Construction_Year"/>
                <field name="sde.SDE.engProjectAreasPts.ORIG_FID" alias="ORIG_FID"/>
                <field name="sde.SDE.engProjectAreasPts.SHAPE" alias="SHAPE"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.OBJECTID" alias="OBJECTID"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjDesc" alias="ProjDesc"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.EngProjID" alias="EngProjID"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjTitle" alias="ProjTitle"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.StartDate" alias="StartDate"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.EndDate" alias="EndDate"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.AccessDetours" alias="AccessDetours"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.AdditionalInfo" alias="AdditionalInfo"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjContact" alias="ProjContact"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjContactPhone" alias="ProjContactPhone"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjContactEmail" alias="ProjContactEmail"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjYear" alias="ProjYear"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.PublicDocumentsPDF" alias="PublicDocumentsPDF"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.ProjectImagesPDF" alias="ProjectImagesPDF"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.DetourMapPDF" alias="DetourMapPDF"/>
                <field name="ProgressMap.dbo.TBLDLHPROGRESSZONES.JurisdictionURL" alias="JurisdictionURL"/>
            </fields>
            <links>
                <link includeinresults="false" field="ProgressMap.dbo.TBLDLHPROGRESSZONES.JurisdictionURL" popuplinktype="image"
                    alias="View Website" tooltip="Click to View Website">
                    <linkprefix />
                    <linksuffix />
                    <iconfield />
                    <iconprefix />
                    <iconsuffix>http://help.arcgis.com/en/webapps/flexviewer/live/assets/images/i_camera.png</iconsuffix>
                </link>
            </links>
            <zoomscale>2000</zoomscale>
            <forcescale>true</forcescale>
        </layer>


That is what it should look like. popuplinktype was missing and all those nulls were not suppose to be there.
0 Kudos
RichardBunten
Deactivated User
Robert,
Thanks for the quick reply.  I tried replacing my code with yours, but the link still does not work.

I have noticed the nulls in the code before, but they also exist in the layer id=0 and the link works fine for that layer where the files have been joined and exported to a file geodatabase.   I only have this problem when the layer joins to a table.  I need to be able to join to this table because we need the data to be live and table is being edited from another SQL front end.

Attached is my code after I edited with your code that you provided.  I also changed the nulls in the Layer id=0.

Thanks,
Richard
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Richard,

  What version of the widget are you using? You can check by holding the Alt key and clicking the widgets title. I do not have a service with such a long joined name but I did test using a joined layer and it worked fine using the 3.6.5 version.

Here is an example of my test configuration:

        <layer>
            <name>Parcels</name>
            <id>1</id>
            <url>http://gislap183:6080/arcgis/rest/services/ParcelTest/MapServer</url>
            <fields>
                <field name="Parcels3.NAME" />
                <field name="Parcels3.TMP_NO" />
                <field name="Parcels3.STREET_ADDRESS" />
                <field name="Parcels3.URL" alias="the url"/>
            </fields>
            <links>
                <link includeinresults="false" field="Parcels3.URL" alias="" popuplinktype="image"
                    tooltip="View Image">
                    <linkprefix />
                    <linksuffix />
                    <iconfield />
                    <iconprefix />
                    <iconsuffix>http://help.arcgis.com/en/webapps/flexviewer/live/assets/images/i_camera.png</iconsuffix>
                </link>
            </links>
            <zoomscale>12000</zoomscale>
            <forcescale>true</forcescale>
        </layer>
0 Kudos
RichardBunten
Deactivated User
I am using the identify widget version 3.6.5 with a build date of 3/1/2014.  I am running ArcServer 10.2.2.

It is odd that it will display the field values but not make a link out of them?
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Richard,

   Do you have your test url populated in that field for all of your features?
0 Kudos
RichardBunten
Deactivated User
No, I only have the test url field populated for a few records. 

I am having some really odd things happen.  It seems that I can make the url field work (shows image and link works) when I use the rectangular select.  However, if I close the identify tool down and then reopen and select with the rectangle the link and image icon don't work.  The other selection tools never work.  Really Strange?

The attributes that are working off the file geodatabase work with all the select tools all of the time.
0 Kudos
RichardBunten
Deactivated User
Robert,
I imported the join table into our sde enterprise DB to see if that would work, but it didn't and I got the same behavior as stated in last entry.   Link and icon only work with rectangle selection until the identify tool is closed.  When I reopen the identify tool all the selection tools return the attribute info but not the link with icon.  The links are just listed with the other attribute info with no hyperlink.

If I refresh the page the rectangle selection will work again.

Thanks for you help.

Richard
0 Kudos
RichardBunten
Deactivated User
Anyone got any ideas on how to solve the problem stated in this thread.
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Richard,

   You have a unique situation with your data that I have not been able to duplicate. It is not going to be possible for me to help more if I can not duplicate your situation.
0 Kudos