“Conocimientos Programación>Visual Basics Programación

Cómo rellenar un campo de formulario ASP en un archivo de Word en el servidor

2014/5/5
Varias tareas pueden realizarse con ASP, tales como la creación de páginas web y la generación de plantilla. Dado que Microsoft desarrolló el lenguaje de programación ASP.NET , es interoperable con otros productos de Microsoft, como Excel y programas de Word . ASP no es difícil de configurar y de utilizar , porque el motor de la aplicación hace todo, de acabar el trabajo y procesar el código para enviar el código para el navegador del usuario para la aplicación. Instrucciones
1

Inicie Microsoft Word y haga clic en "Archivo " de la barra de menú . Haga clic en " Guardar como" en el menú desplegable. Cuando el diálogo Guardar como aparece, haga clic en el " negro flecha que apunta hacia abajo " y seleccione " Plantilla de documento (*. Dot ) " de la lista desplegable como formato de documento. Esta plantilla se carga con varios componentes avanzados de Microsoft Word, tales como gráficos y elementos de dibujo, campos de combinación , texto y casilla campos de formulario , un anidados códigos VBA pie de página y dinámico.
2

Elija " Vista desde la barra de menú y seleccione " Barras de herramientas "en el menú desplegable. en el menú desplegable de la de la barra de herramientas, haga clic en" Formularios ", y luego añadir un" campo de formulario de texto " en el documento.
< p > Haga clic en el " campo de formulario de texto " que ha creado y seleccione "Propiedades" para obtener la información marcador. Asociar un nombre en el campo marcador para obtener el valor del campo de combinación que creará más adelante. Establecer el "Tipo" en texto normal . la salida debería ser [____ ] .
3

Elija "Insertar " de la barra de menú y luego seleccione la opción " Combinar correspondencia " categoría y el nombre del campo " MergeField " . Introduzca el nombre que ha designado a su campo de formulario de texto marcador temprano después del texto el resultado debería ser [ Agregar a favoritos nombre] Además, la entrada del siguiente código de VBA para proteger sus campos MailMerge se borre en la plantilla por otros usuarios " MERGEFIELD . " . :

Sub Proteger ( )

'

"proteger Macro

'

ActiveDocument.Protect wdAllowOnlyFormFields , Verdadero
< p > End Sub
4

Inserte el siguiente código para mejorar la funcionalidad de su documento con macros. Este demo ofrece a sus usuarios muchas características avanzadas en la base de datos del servidor , y también recoger y almacenar los valores de los campos del formulario que ha creado para su uso en la función sendRequest :

Public Sub Update ()

yn As VbMsgBoxResult

yn = MsgBox ( " ¿Desea actualizar la base de datos con las nuevas selecciones beneficiarios ? " , vbYesNo , " Database Update? " )

Si yn = vbNo Entonces

Exit Sub End If


< p > vals Dim ( 4 ) As Variant

Estado Dim As Integer

Si ActiveDocument.FormFields ( " chka ") . CheckBox.Value = True Luego

Estado = 1

ElseIf ActiveDocument.FormFields ( " CHKB ") . CheckBox.Value = True Luego

estado = 2

ElseIf ActiveDocument.FormFields ( " CHKC ") . CheckBox.Value = entonces verdad

estado = 3

End If
vals

( 0 ) = " BeneficiaryStatus = " & Status

vals ( 1 ) = " principal1 = " & Trim ( ActiveDocument.FormFields ( " principal1 ") . Resultado)
vals

( 2 ) =" Primary2 = " & Trim ( ActiveDocument.FormFields ( " Primary2 ") . Resultado)

vals ( 3 ) = " Contingent1 =" & Trim ( ActiveDocument.FormFields ( " Contingent1 ") . Resultado)
vals

( 4 ) = " Contingent2 =" & Trim ( ActiveDocument.FormFields ( " Contingent2 ") . Resultado)

URL dévil como secuencia

reqname Dim As String Dim

httpStatus As Integer

URL = " http://localhost/Demos/OfficeWriter /Postone /BeneficiarySelection.aspx "

reqname =" UpdateBeneficiaries "

On Error Resume Next

httpStatus = HotCellRequest.SendRequest (URL , reqname , vals )
< p> Si Err.Number < > 0 Entonces

MsgBox " Error al enviar solicitud HotCell . No se ha podido ponerse en contacto con la página de actualización de base de datos del servidor " & _

vbCrLf &" Detalles: . "& Err.Description , _

vbCritical , " HotCell Error de solicitud "

Exit Sub

End If

On Error GoTo 0

Si httpStatus = 200 Entonces

MsgBox "Usted ha presentado con éxito su selección de beneficiarios . ", _

vbOKOnly , " HotCell actualización Sucesor "

demás

MsgBox " La actualización de la base HotCell no tuvo éxito. La base de datos del servidor de actualización " & _

" página devuelve un error. El servidor devuelve el código de estado: "& httpStatus , _

vbCritical , " HotCell Error de actualización "

End If End Sub


5

. Escriba el siguiente código para habilitar la función sendRequest en el documento cerca de enviar los valores del formulario a través de HTTP a la página ASP.NET Esto poblar la base de datos con los campos del formulario que ha creado mientras se mantiene intacta toda la información de la plantilla de documento de Word :

Public Function sendRequest (URL As String , requestname como secuencia, pares As Variant ) As Integer

strReq Dim As String Dim

oHTTP As Object

' --- El objeto XMLHTTP necesita valores del formulario se envíen este formulario:

' --- " nombre1 = valor1 y nombre2 = valor2 y name3 = value3 " , etc

' --- estamos formando una petición de ese formato aquí

strReq = join ( pares , " &")

' --- Utilice el objeto XMLHTTP hacer la solicitud HTTP

On Error Resume Next

Set oHTTP = CreateObject ( " Msxml2.XMLHTTP.3.0 " )

Si Err.Number < > 0 Entonces

Err.Raise Err.Number , " HotCellRequest ", _

"No se pudo crear objeto XMLHTTP que es requerido por HotCells . "

Exit Función

End If

On Error GoTo 0

On Error Resume Next

oHTTP.Open "POST " , URL , False

Si Err.Number < > 0 Entonces

Err . Levante Err.Number , " HotCellRequest ", _

" HotCell no pudo conectar con " & URL & "" & _

Err.Description

Exit Función

End If

On Error GoTo 0

' --- Tenemos que establecer esto siempre enviar datos de formulario

oHTTP.SetRequestHeader "Content- Type" , " application /-www -form - urlencoded x "

oHTTP.SetRequestHeader " X- SaHotCellRequest " , requestname

' --- Enviar la solicitud

On Error Resume Next

oHTTP.Send CStr ( strReq )

Si Err.Number < > 0 Entonces

Err.Number Err.Raise , " HotCellRequest ", _
< p> " HotCell falló al enviar datos en" & URL & "" & _

Err.Description

Exit Función

End If On Error

GoTo 0

sendRequest = oHTTP.Status

' --- Limpie

oHTTP Set = Nothing End Function




Visual Basics Programación
Cómo controlar un teclado en Visual Basic
Cómo ejecutar un Powershell el interior de programación Visual Basic
Cómo hacer un acceso directo para un tarro de VBS
Cómo insertar texto en un documento de Word en VBA
Cómo crear un navegador Web con VB
Cómo utilizar matrices en Visual Basic
Cómo cambiar el puntero del mouse en Visual Basic 6
Cómo utilizar el comando SHAPE de Visual Basic 6
Conocimientos Informáticos © http://www.ordenador.online