Compartir a través de


Método Application.FieldNameToFieldConstant (Project)

Devuelve un valor Long para un campo personalizado local o un nombre de campo personalizado de empresa.

Sintaxis

expresión. FieldNameToFieldConstant( _FieldName_, _FieldType_ )

expresión Variable que representa un objeto Application.

Parámetros

Nombre Obligatorio/opcional Tipo de datos Descripción
FieldName Obligatorio String Nombre del campo personalizado local o de empresa.
FieldType Opcional Long El tipo de campo. Puede ser una de las siguientes constantes PjFieldType: pjProject, pjResource o pjTask. El valor predeterminado es pjTask.

Valor devuelto

Long

Comentarios

Si el argumento FieldName es un campo personalizado local, el valor devuelto puede ser una constante de PjField. Si FieldName es un campo personalizado de empresa, el valor devuelto no coincide con una constante de PjField porque puede haber un número ilimitado de campos personalizados de empresa.

Nota:

[!NOTA] Por razones de uso y rendimiento, la cantidad de campos personalizados de empresa debe limitarse a unos pocos cientos o menos.

Puede tener acceso a los campos personalizados de proyecto a través de la propiedad ProjectSummaryTask.

Ejemplo:

El ejemplo siguiente muestra la diferencia entre los métodos FieldNameToFieldConstant y FieldConstantToFieldName:

  1. Para emplear este ejemplo, use Project Web App para crear un campo personalizado de texto del proyecto llamado TextoDeProyDeEmprDePrueba.

  2. Reinicie Project con un perfil de Project Server para que incluya el nuevo campo personalizado.

  3. Use el cuadro de diálogo Información del proyecto para crear un proyecto con un valor para el campo TextoDeProyDeEmprDePrueba.

  4. La macro TestEnterpriseProjectCF usa el método FieldNameToFieldConstant para buscar el número del projectField, por ejemplo, 190873618.

  5. La macro muestra el valor numérico y de texto en un cuadro de mensaje con el método GetField.

  6. La macro obtiene el nombre del campo con el método FieldConstantToFieldName, establece un nuevo valor mediante el método SetField y, a continuación, muestra el nombre de campo y el nuevo valor en otro cuadro de mensaje.

Sub TestEnterpriseProjectCF() 
    Dim projectField As Long 
    Dim projectFieldName As String 
    Dim message As String 
 
    projectField = FieldNameToFieldConstant("TestEntProjText", pjProject) 
 
    ' Show the enterprise project field number and old value. 
    message = "Enterprise project field number: " & projectField & vbCrLf 
    MsgBox message & ActiveProject.ProjectSummaryTask.GetField(projectField) 
 
    ActiveProject.ProjectSummaryTask.SetField FieldID:=projectField, Value:="This is a new value." 
 
    ' For a demonstration, show the field name from the field number, and verify the new value. 
    projectFieldName = FieldConstantToFieldName(projectField) 
    message = "New value for field: " & projectFieldName & vbCrLf 
    MsgBox message & ActiveProject.ProjectSummaryTask.GetField(projectField) 
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.