Estándar do WSS / Moss pantallas de entrada de datos non soportan a fervenza drop-Downs (ou outro intra-de comunicación)

Actualización (04/2008): Esta entrada de blogue gran mostra unha visión baseada en JavaScript bo a este problema: http://webborg.blogspot.com/2008/04/add-functions-and-events-to-sharepoint.html

Actualización II: (04/2008): Este blog parece prometedor, así: http://www.cleverworkarounds.com/2008/03/13/free-mosswss-2007-web-part-hide-controls-via-javascript/

Varias veces por semana, se non diariamente, forum users describe a requirement that would normally be met via cascading drop-downs. Por exemplo, Eu teño dous desplegable controis:

  • Lista de U.S. estados
  • Lista de U.S. cities.

As responsible UI providers, we want it to operate like this:

  • Paul selects a U.S. state from the drop-down.
  • This causes the cities drop-down to filter only those cities that belong to the selected state.
  • Paul selects a city from this filtered list.

There is no out-of-the-box support for this feature. En realidade, there is no OOB support for any kind of direct intra-form communication. This includes programmatically hiding/enabling/disabling fields in response to field changes elsewhere on the form.

The real objective of this article to to describe possible solutions and these are the options as I know them:

  1. Develop a custom column type. As a custom-column-developer, you have full control over the "world" of that custom column. You can implement a cascading drop-down that way.
  2. Consider using workflow. In some cases, you want to automatically assign a value to field based on another field’s value. Neste caso, you would normally try to use a calculated column, but some times, it just won’t get the job done. SharePoint Designer workflow is a relatively administer-friendly alternative to dropping down into code and visual studio. If you go this route, be aware of the issue addressed by Neste artigo (http://paulgalvin.spaces.live.com/blog/cns!CC1EDB3DAA9B8AA!405.entry).
  3. Event handlers: Like workflow, this is an after-the-fact solution. Your event handler is a .NET assembly (C #, VB.NET) to which SharePoint passes control. The object you develop has access to the data of the list (and the whole object model) and can do any needed calculation.
  4. Use SharePoint Designer to create custom entry forms. I don’t have direct experience with this approach, but I hear they are doing good things with NewForm.aspx these days 🙂
  5. Roll your own ASP.NET data entry function (as a stand-alone web page or as a web part) and use that instead.

If anyone knows other and/or better options, please post a comment and I’ll update the body of this post.

</ Comezo>

4 pensamentos sobre "Estándar do WSS / Moss pantallas de entrada de datos non soportan a fervenza drop-Downs (ou outro intra-de comunicación)

  1. Paul Galvin
    Monjo,
    Thanks for the comment, this is the kind of feedback for which I was hoping.
    It appears that as I write this, the cost is $349 USD? Se é así, is that price for unlimited use?
    Grazas!
    –Galicia
    Responder
  2. Mike Mongeau

    Galicia,

    Check this out: http://www.spsdev.com/filter.aspx .

    From their site: "SpsDev.Com’s Filter Field is a custom field type that does filtering.
    You can add one to many filter fields to your list or library, and each one can
    be filtered based on another filtered field in the list. Pick a state in
    one field, and the list of cities in the next field is filtered to only show
    items from that state, por exemplo. In this release we support SQL Server
    2000 e 2005, and Xml as sources for the field data. As you change a
    selection in any of the drop downs, all of the drop downs below it are each
    filtered to show only the appropriate choices based on the selection that’s
    been made."

    Monjo

    Responder

Deixe unha resposta

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados *