Saltar al contenido principal
Versión: 20 R8 BETA

VP IMPORT DOCUMENT

Historia
LanzamientoModificaciones
20 R2Soporte de documentos .sjs

VP IMPORT DOCUMENT ( vpAreaName : Text ; filePath : Text { ; paramObj : Object} )

ParámetrosTipoDescripción
vpAreaNameText->Nombre de objeto formulario área 4D View Pro
filePathText->Ruta de acceso del documento
paramObjObject->Opciones de importación

Descripción

El comando VP IMPORT DOCUMENT importa y muestra el documento designado por filePath en el área de 4D View Pro vpAreaName. El documento importado sustituye a los datos ya insertados en el área.

En vpAreaName, pase el nombre del área 4D View Pro. Si pasa un nombre que no existe, se devuelve un error.

En filePath, pase la ruta y el nombre del documento a importar. Se soportan los siguientes formatos:

  • Los documentos 4D View Pro (extensión ".4vp")
  • Microsoft Excel (extensión ".xlsx")
  • documentos texto (extension ".txt", ".csv", el documento debe estar en utf-8)
  • SpreadJS documents (extension ".sjs")

Si la extensión del documento no es una extensión reconocida, como .4vp o .xlsx, el documento se considera un documento texto. Debe pasar una ruta completa, a menos que el documento se encuentre en el mismo nivel que la carpeta Project, en cuyo caso puede pasar sólo su nombre.

Se devuelve un error si el parámetro filePath no es válido, o si el archivo falta o está mal formado.

El parámetro opcional paramObj permite definir las propiedades del documento importado:

ParámetrosTipoDescripción
formula4D.FunctionUn método de retollamada que se lanzará cuando la importación haya terminado. Debe utilizar una fórmula devuelta por el comando Formula. Ver Pasar un método de retrollamada (fórmula).
contraseñatextSólo Microsoft Excel (opcional) - La contraseña utilizada para proteger un documento MS Excel.
csvOptionsobjectopciones de importación csv
rangeobjectRango de celdas que contiene la primera celda donde se escribirán los datos. Si el rango especificado no es un rango de celdas, sólo se utiliza la primera celda del rango.
rowDelimitertextDelimitador de línea. Si no está presente, el delimitador es determinado automáticamente por 4D.
columnDelimitertextDelimitador de columna. Por defecto: ","
sjsOptionsobjectopciones para la importación de sjs
calcOnDemandbooleanSi se calculan las fórmulas sólo cuando se solicitan, por defecto es false.
dynamicReferencesbooleanSi calcular funciones con referencias dinámicas, por defecto es true.
fullRecalcbooleanSi calcular después de cargar los datos json, false por defecto.
includeFormulasbooleanSi se incluyen las fórmulas al cargar, por defecto es true.
includeStylesbooleanSi se incluyen los estilos al cargar, por defecto es true.
includeUnusedStylesbooleanSi se incluyen los estilos de nombre no utilizados al convertir excel xml a json, por defecto es true.
openModeinteger
  • 0 (normal): modo abierto normal, sin perezoso (lazy) e incremental. Al abrir un archivo, la interfaz de usuario y el evento de interfaz de usuario podrían actualizarse y responder en momentos específicos.
  • 1 (lazy): modo de apertura lazy. Al abrir el archivo, sólo se cargará directamente la hoja activa. Las demás hojas sólo se cargarán cuando se vayan a utilizar.
  • 2 (incremental): modo de apertura incremental. Al abrir un archivo, la interfaz de usuario y el evento de interfaz de usuario podrían actualizarse y responder directamente.
  • excelOptionsobjectExcel only (optional) - Options for Excel export
    includeStylesbooleanWhether to include the style when importing, default true.
    includeFormulasbooleanWhether to include the formula when importing, default true.
    frozenColumnsAsRowHeadersbooleanWhether to treat the frozen columns as row headers when importing, default false.
    frozenRowsAsColumnHeadersbooleanWhether to treat the frozen rows as column headers when importing, default false.
    fullRecalcbooleanSi calcular después de cargar los datos json, false por defecto.
    dynamicReferencesbooleanWhether to calculate functions with dynamic reference, default true.
    calcOnDemandbooleanWhether to calculate formulas only when they are demanded, default false.
    includeUnusedStylesbooleanWhether to include the unused name style when converting excel xml to the json, default true.
    contraseñatextThe password to open the workbook.
    openModetextThe open mode of normal, lazy and incremental. By default is normal.
    Notas
    • La importación de archivos en formatos .xslx, .csv y .sjs es asíncrona. Con estos formatos, debe utilizar el atributo formula si desea iniciar una acción al final del procesamiento del documento.
    • Al importar un archivo con formato Microsoft Excel a un documento 4D View Pro, algunos parámetros pueden perderse. Puede verificar su configuración con esta lista de SpreadJS.
    • Para más información sobre el formato CSV y los valores separados por delimitadores en general, ver este artículo en Wikipedia
    • Using excelOptions object is recommended when importing ".xlsx" format. Make sure to not mix this object with legacy first level property password to avoid potiental issues.

    Ejemplo 1

    Desea importar un documento 4D View Pro por defecto almacenado en el disco, al abrir el formulario:

    var $docPath : text
    If(Form event code=On VP Ready) //4D View Pro area loaded and ready
    $docPath:="C:\\Bases\\ViewProDocs\\MyExport.4VP"
    VP IMPORT DOCUMENT("VPArea";$docPath)
    End if

    Ejemplo 2

    Desea importar un documento Microsoft Excel protegido por contraseña a un área 4D View Pro:

    	//Import code
    var $o:={}
    $o.formula:=Formula(myImport)
    $excelOptions:={includeStyles:false;includeFormulas:true;password:"excel123"}
    $o.excelOptions:=$excelOptions

    VP IMPORT DOCUMENT("ViewProArea";"c:\\tmp\\excelfile.xlsx";$o)
    	//myImport callback method
    #DECLARE($area : Text; $filePath : Text; $param : Object; $status : Object)

    If ($status.success)
    ALERT("Import successfully completed")
    Else
    ALERT("Error: "+$status.errorMessage)
    End if

    Ejemplo 3

    Quiere importar un archivo .txt que utiliza una coma (",") como delimitador:

    example-import-csv

    var $params:={}
    $params.range:=VP Cells("ViewProArea";0;0;2;5)
    VP IMPORT DOCUMENT("ViewProArea";"c:\\import\\my-file.txt";New object("csvOptions";$params))

    Este es el resultado: example-import-csv

    Ver también

    VP EXPORT DOCUMENT
    VP NEW DOCUMENT
    4D View Pro: Excel import/export update (blog post)