Ah! Boy this was tricky to get working. In my tests, it is the logical operators AND and OR that are not working, with MapServer 8.0-dev (I tested mode=map, map2img/shp2img, WMS GetMap, and PHP MapScript). But the great news is that something like the following works well, in all modes :

     LAYER
       ..
       REQUIRES "![yourlayername]"
     END


   not working: REQUIRES "![yourlayername] OR ![someotherlayername]"

I'll add these notes to the docs today... Thanks for the nudge on this Carlos!

-jeff




On 2021-11-23 6:07 p.m., Jeff McKenna wrote:
Indeed I think my testing was wrong, as mode=map and layers= was overriding the REQUIRES parameter, as I see that in msautotest things are working with shp2img.  So, maybe I should not have sent these messages ha.

-jeff



On 2021-11-23 5:42 p.m., Rahkonen Jukka (MML) wrote:
Hi Jeff,

I know REQUIRES has worked in a positive way (show copyright when a layer is on) because I have used that feature but I do not admin that service any more and I can't check the details. Probably I used version 6.x then.

-Jukka Rahkonen-

-----Alkuperäinen viesti-----
Lähettäjä: MapServer-users <[email protected]> Puolesta Jeff McKenna
Lähetetty: tiistai 23. marraskuuta 2021 23.35
Vastaanottaja: [email protected]
Aihe: Re: [mapserver-users] How to Turn off a Layer when other specific Layer is ON in a map file ?

To give a more detailed example of what *should* work:

    LAYER
      ..
      REQUIRES "![modis] OR ![someotherlayername]"
    END

I'll continue my 8.0-dev testing...


-jeff



--
Jeff McKenna
GatewayGeo: Developers of MS4W, MapServer Consulting and Training co-founder of FOSS4G http://gatewaygeo.com/


On 2021-11-23 5:29 p.m., Jeff McKenna wrote:
Hi Carlos,

I had a great answer drafted for you, tooting my own horn on the recent
MapServer tutorial updates for MapServer 8.x, and the demo server
updates...as by chance the tutorial mentions that the parameter
"REQUIRES" at the LAYER level should do exactly what you need, super :
but sadly my tests now fail with MapServer 8.0-dev, I cannot get
REQUIRES to work, such as:

    LAYER
     ..
     REQUIRES "![modis]"
    END

   where modis is another layer name.

Since I hadn't been testing this feature, and it is only briefly
mentioned in the tutorial (and not part of the live demo), I have no way
of saying when this should have worked, for what MapServer version.  It
is part of the tutorial mapfiles, but the functionality is not working,
for my local tests.

But your question has made me see more room for improvement in the
tutorial, and its mapfiles, so your question has helped.

Sorry for my non-news, ha.

I'll do more testing on this feature and report back.

-jeff




_______________________________________________
MapServer-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/mapserver-users





--
Jeff McKenna
GatewayGeo: Developers of MS4W, MapServer Consulting and Training
co-founder of FOSS4G
http://gatewaygeo.com/
_______________________________________________
MapServer-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to