Compartir a través de


del método SPFieldWorkflowStatus.Init

Inicializa el objeto SPFieldWorkflowStatus .

Espacio de nombres:  Microsoft.SharePoint
Ensamblado:  Microsoft.SharePoint (en Microsoft.SharePoint.dll)

Sintaxis

'Declaración
Public Sub Init ( _
    strUrl As String, _
    strShowField As String _
)
'Uso
Dim instance As SPFieldWorkflowStatus
Dim strUrl As String
Dim strShowField As String

instance.Init(strUrl, strShowField)
public void Init(
    string strUrl,
    string strShowField
)

Parámetros

  • strUrl
    Tipo: System.String

    La dirección URL de una página de estado de flujo de trabajo personalizado. El valor predeterminado es _layouts/WrkStat.aspx.

  • strShowField
    Tipo: System.String

    El nombre del campo que se va a mostrar. El valor predeterminado es Status1.

Comentarios

Este método establece los atributos WorkflowStatusURL y el ShowField de la definición de elemento de campo y establece la propiedad ReadOnlyField del campo true.

Ejemplos

En el siguiente ejemplo es una aplicación de consola que agrega un campo WorkflowStatus a la lista denominada Test List y se inicializa el campo.

La aplicación requiere que el sitio Web tiene una lista denominada "Lista de prueba" y la plantilla de al menos un flujo de trabajo.

Imports System
Imports System.Collections.Specialized

Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Workflow

Module ConsoleApp
   Sub Main()
      Using site As SPSite = New SPSite("https://localhost")
         Using web As SPWeb = site.OpenWeb()

            Dim list As SPList = web.Lists("Test List")
            Dim workflowTemplate As SPWorkflowTemplate = web.WorkflowTemplates(0)

            Dim choices As StringCollection = workflowTemplate.GetStatusChoices(web)
            Dim fldName As String = list.Fields.Add("Workflow Status", _
                SPFieldType.WorkflowStatus, False, True, choices)
            Dim statusUrl As String = workflowTemplate.StatusUrl

            Dim fld As SPFieldWorkflowStatus = CType(list.Fields.GetFieldByInternalName(fldName), _
                SPFieldWorkflowStatus)
            fld.Init(statusUrl, Nothing)
            fld.Update()

            Console.WriteLine("Field {0} {1} read-only.", fldName, IIf(fld.ReadOnlyField, "is", "is not"))

         End Using
      End Using
      Console.Write(vbCrLf + "Press ENTER to continue...")
      Console.ReadLine()
   End Sub
End Module
using System;
using System.Collections.Specialized;

using Microsoft.SharePoint;
using Microsoft.SharePoint.Workflow;

namespace Test
{
   class ConsoleApp
   {
      static void Main(string[] args)
      {
         using (SPSite site = new SPSite("https://localhost"))
         {
            using (SPWeb web = site.OpenWeb())
            {
               SPList list = web.Lists["Test List"];
               SPWorkflowTemplate workflowTemplate = web.WorkflowTemplates[0];

               StringCollection choices = workflowTemplate.GetStatusChoices(web);
               string fldName = list.Fields.Add("Workflow Status", 
                   SPFieldType.WorkflowStatus, false, true, choices);
               string statusUrl = workflowTemplate.StatusUrl;

               SPFieldWorkflowStatus fld = list.Fields.GetFieldByInternalName(fldName) as SPFieldWorkflowStatus;
               fld.Init(statusUrl, null);
               fld.Update();

               Console.WriteLine("Field {0} {1} read-only.", fldName, fld.ReadOnlyField ? "is" : "is not");
            }
         }
         Console.Write("\nPress ENTER to continue...");
         Console.ReadLine();
      }
   }
}

Vea también

Referencia

clase SPFieldWorkflowStatus

Miembros SPFieldWorkflowStatus

Espacio de nombres Microsoft.SharePoint

StatusUrl

StatusColumn

Otros recursos

Field Element (Definition)