__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<!DOCTYPE html>
<html lang="es" dir="ltr">
<head>
<base href="../../../../../">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Servicio ScriptForge.Array (SF_Array)</title>
<link rel="shortcut icon" href="media/navigation/favicon.ico">
<link type="text/css" href="normalize.css" rel="Stylesheet">
<link type="text/css" href="prism.css" rel="Stylesheet">
<link type="text/css" href="default.css" rel="Stylesheet">
<script type="text/javascript" src="polyfills.js"></script><script type="text/javascript" src="languages.js"></script><script type="text/javascript" src="es/langnames.js"></script><script type="text/javascript" src="flexsearch.debug.js"></script><script type="text/javascript" src="prism.js"></script><script type="text/javascript" src="help2.js" defer></script><script type="text/javascript" src="a11y-toggle.js" defer></script><script type="text/javascript" src="paginathing.js" defer></script><script type="text/javascript" src="es/bookmarks.js" defer></script><script type="text/javascript" src="es/contents.js" defer></script><script type="text/javascript" src="help.js" defer></script><meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body>
<header id="TopLeftHeader"><a class="symbol" href="es/text/shared/05/new_help.html"><div></div></a><a class="logo" href="es/text/shared/05/new_help.html"><p dir="auto">Ayuda de LibreOffice 25.2</p></a><div class="dropdowns"><div class="modules">
<button type="button" data-a11y-toggle="modules-nav" id="modules" aria-haspopup="true" aria-expanded="false" aria-controls="modules-nav">Módulo</button><nav id="modules-nav" hidden=""></nav>
</div></div></header><aside class="leftside"><input id="accordion-1" name="accordion-menu" type="checkbox"><label for="accordion-1" dir="auto">Contenido</label><div id="Contents" class="contents-treeview"></div></aside><div id="SearchFrame"><div id="Bookmarks">
<input id="search-bar" type="search" class="search" placeholder="Buscar en los marcadores del módulo elegido" dir="auto"><div class="nav-container" tabindex="0"><nav class="index" dir="auto"></nav></div>
</div></div>
<div id="DisplayArea" itemprop="softwareHelp" itemscope="true" itemtype="http://schema.org/SoftwareApplication">
<noscript><div id="WarnJS"><h1 dir="auto">Active JavaScript en el navegador para mostrar las páginas de ayuda de LibreOffice.</h1></div></noscript>

<a id="abstract"></a>
  <a id="bm_id281613039222756"></a>     <meta itemprop="keywords" content="servicio Array">

  <h1 id="bm_id781582391760253" dir="auto">
<a id="ArrayService"></a>Servicio <span class="literal">ScriptForge</span>.<span class="literal">Array</span>
</h1>
  <p id="par_id991582454416549" class="paragraph" dir="auto">Facilita una colección de métodos para manipular y transformar formaciones de una dimensión (vectores) y de dos (matrices). La colección incluye operaciones de conjunto, ordenación, importación y exportación a partir de archivos de texto.</p>
  <p id="par_id681609955015503" class="paragraph" dir="auto">Las matrices con más de dos dimensiones no pueden utilizarse con los métodos de este servicio, siendo la única excepción el método <span class="literal">CountDims</span>, que acepta matrices con cualquier número de dimensiones.</p>


  <p id="par_id651582454426538" class="paragraph" dir="auto">Los elementos en las matrices pueden contener cualquier tipo de valor, incluidas (sub)matrices.</p>

  <h2 id="hd_id981586595097630" dir="auto">Invocación del servicio</h2>
  <p id="par_id141609955500101" class="paragraph" dir="auto">Antes de utilizar el servicio <span class="literal">Array</span>, se debe cargar la biblioteca <span class="literal">ScriptForge</span> mediante:</p>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
  </code></pre></div>
  <p id="par_id461609955633383" class="paragraph" dir="auto">La carga de la biblioteca creará el objeto <span class="literal">SF_Array</span>, que puede utilizarse para llamar a los métodos del servicio <span class="literal">Array</span>.</p>
  <p id="par_id63158659509728" class="paragraph" dir="auto">Los siguientes fragmentos de código muestran las diversas formas de llamar a los métodos en el servicio <span class="literal">Array</span> (el método <span class="literal">Append</span> se usa como ejemplo):</p>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim arr : arr = Array(1, 2, 3)
    arr = SF_Array.Append(arr, 4)
  </code></pre></div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim arr : arr = Array(1, 2, 3)
    Dim svc : svc = SF_Array
    arr = svc.Append(arr, 4)
  </code></pre></div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim arr : arr = Array(1, 2, 3)
    Dim svc : svc = CreateScriptService("Array")
    arr = svc.Append(arr, 4)
  </code></pre></div>
  <div class="warning">
<div class="noteicon" dir="auto"><img src="media/icon-themes/res/helpimg/warning.svg" alt="warning" style="width:40px;height:40px;"></div>
<div class="notetext"><p id="par_id571609956486468" dir="auto">Debido a que Python incorpora compatibilidad para listas y tuplas, la mayoría de los métodos en el servicio <span class="literal">Array</span> están disponibles solo para secuencias BASIC. La única excepción es <span class="literal">ImportFromCSVFile</span>, que se admite tanto en BASIC como en Python.</p></div>
</div>
<br>
  <a id="methods_toc"></a>
  <table border="1" class="" cellpadding="0" cellspacing="0">
  <tr>
    <th rowspan="" colspan="3" class="tableheadcell" dir="auto">
      <p id="par_id651606319520519" class="tableheadintable" dir="auto">Lista de métodos en el servicio Array</p>
    </th>
  </tr>
  <tr>
    <td rowspan="" colspan="" dir="auto">
      <p id="par_id361606235233835" class="tablecontentintable" dir="auto">
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Append">Append</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#AppendColumn">AppendColumn</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#AppendRow">AppendRow</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Contains">Contains</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#ConvertToDictionary">ConvertToDictionary</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Copy">Copy</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#CountDims">CountDims</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Difference">Difference</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#ExportToTextFile">ExportToTextFile</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#ExtractColumn">ExtractColumn</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#ExtractRow">ExtractRow</a><br>
      </p>
    </td>
    <td rowspan="" colspan="" dir="auto">
      <p id="par_id231606235233835" class="tablecontentintable" dir="auto">
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Flatten">Flatten</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#ImportFromCSVFile">ImportFromCSVFile</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#IndexOf">IndexOf</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Insert">Insert</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#InsertSorted">InsertSorted</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Intersection">Intersection</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Join2D">Join2D</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Prepend">Prepend</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#PrependColumn">PrependColumn</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#PrependRow">PrependRow</a><br>
        <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#RangeInit">RangeInit</a><br>
      </p>
    </td>
    <td rowspan="" colspan="" dir="auto">
      <p id="par_id831606235233835" class="tablecontentintable" dir="auto">
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Reverse">Reverse</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Shuffle">Shuffle</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Slice">Slice</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Sort">Sort</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#SortColumns">SortColumns</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#SortRows">SortRows</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Transpose">Transpose</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#TrimArray">TrimArray</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Union">Union</a><br>
       <a target="_top" href="es/text/sbasic/shared/03/sf_array.html#Unique">Unique</a><br><br>
      </p>
    </td>
  </tr>
  </table>
<br>
  
  <div class="tip">
<div class="noteicon" dir="auto"><img src="media/icon-themes/res/helpimg/tip.svg" alt="tip" style="width:40px;height:40px;"></div>
<div class="notetext"><p id="par_id191582454485250" dir="auto">El primer argumento de la mayoría de los métodos es el objeto matricial para considerar. Siempre se pasa por referencia y se deja sin cambios. Métodos como Append, Prepend, etc. devuelven un nuevo objeto matricial después de su ejecución.</p></div>
</div>
<br>

<a id="Append"></a>
  
  <a id="bm_id251582548992953"></a>
    <meta itemprop="keywords" content="Array service,Append">
  
  <h2 id="hd_id151582548992953" dir="auto">Append</h2>
  <p id="par_id931582548992953" class="paragraph" dir="auto">Agrega los elementos enumerados como argumentos al final de la matriz de entrada.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id921626975382809" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Append(array_1d: any[0..*], arg0: any, [arg1: any] ...): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id471582548992953" class="paragraph" dir="auto"><span class="emph">array_1d</span>: La matriz preexistente puede estar vacía.</p>
  <p id="par_id531582548992953" class="paragraph" dir="auto"><span class="emph">arg0, arg1…</span>: elementos que se añadirán a <span class="literal">array_1d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Append(Array(1, 2, 3), 4, 5)
        ' (1, 2, 3, 4, 5)
  </code></pre></div>


<a id="AppendColumn"></a>
  
  <a id="bm_id591582549679172"></a>
    <meta itemprop="keywords" content="Array service,AppendColumn">
  
  <h2 id="hd_id291582549679173" dir="auto">AppendColumn</h2>
  <p id="par_id241582549679173" class="paragraph" dir="auto">Agrega una columna nueva a la derecha de una matriz bidimensional. La matriz resultante tiene los mismos límites inferiores que la matriz bidimensional inicial.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id231626975799102" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.AppendColumn(array_2d: any[0..*, 0..*], column: any[0..*]): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id461582549679175" class="paragraph" dir="auto"><span class="emph">array_2d</span>: la matriz preexistente puede estar vacía. Si esa matriz tiene solo una dimensión, se considera como la primera columna de la matriz bidimensional resultante.</p>
  <p id="par_id991582549679175" class="paragraph" dir="auto"><span class="emph">column</span>: una matriz unidimensional con la misma cantidad de elementos que las filas que hay en <span class="literal">array_2d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant, b As variant
    a = SF_Array.AppendColumn(Array(1, 2, 3), Array(4, 5, 6))
        ' ((1, 4), (2, 5), (3, 6))
    b = SF_Array.AppendColumn(a, Array(7, 8, 9))
        ' ((1, 4, 7), (2, 5, 8), (3, 6, 9))
    c = SF_Array.AppendColumn(Array(), Array(1, 2, 3))
        ' ∀ i ∈ {0 ≤ i ≤ 2} : b(0, i) ≡ i
  </code></pre></div>


<a id="AppendRow"></a>
  
  <a id="bm_id451582551311490"></a>
    <meta itemprop="keywords" content="Array service,AppendRow">
  
  <h2 id="hd_id751582551333335" dir="auto">AppendRow</h2>
  <p id="par_id941582551396374" class="paragraph" dir="auto">Añade una fila nueva a la parte inferior de una matriz bidimensional. La matriz resultante tiene los mismos límites inferiores que la matriz bidimensional inicial.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id371626976443125" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.AppendRow(array_2d: any[0..*, 0..*], row: any[0..*]): any[0..*, 0..*])</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id631582551461984" class="paragraph" dir="auto"><span class="emph">array_2d</span>: la matriz preexistente puede estar vacía. Si esa matriz tiene una dimensión, se considera como la primera fila de la matriz bidimensional resultante.</p>
  <p id="par_id101582551483685" class="paragraph" dir="auto"><span class="emph">row</span>: una matriz unidimensional con un elemento por cada columna en <span class="literal">array_2d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant, b As variant
    a = SF_Array.AppendRow(Array(1, 2, 3), Array(4, 5, 6))
        '  ((1, 2, 3), (4, 5, 6))
    b = SF_Array..AppendRow(Array(), Array(1, 2, 3))
        ' ∀ i ∈ {0 ≤ i ≤ 2} : b(i, 0) ≡ i
  </code></pre></div>


<a id="Contains"></a>
  
  <a id="bm_id521582552517869"></a>
    <meta itemprop="keywords" content="Array service,Contains">
  
  <h2 id="hd_id21582552517870" dir="auto">Contains</h2>
  <p id="par_id391582552517870" class="paragraph" dir="auto">Compruebe si una matriz de una dimensión contiene un determinado número, texto o fecha. La comparación de texto puede distinguir entre mayúsculas y minúsculas o no. <br>Las matrices de entrada ordenadas deben llenarse de manera homogénea, lo que significa que todos los elementos deben ser escalares del mismo tipo (los elementos <span class="literal">Vacio</span> y <span class="literal">Nulo</span> están prohibidos). <br>El resultado del método es impredecible cuando la matriz se anuncia como ordenada y en realidad no lo es. <br>Se realiza una búsqueda binaria cuando se ordena la matriz; de lo contrario, simplemente se escanea de arriba a abajo y se ignoran los elementos <span class="literal">Vacio</span> y <span class="literal">Nulo</span>.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id641626976688897" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Contains(array_1d: any[0..*], tofind: any, casesensitive: bool = False, sortorder: str = ""): bool</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id451582552517871" class="paragraph" dir="auto"><span class="emph">array_1d</span>: la matriz que se utilizará en la búsqueda.</p>
  <p id="par_id221582552517872" class="paragraph" dir="auto"><span class="emph">tofind</span>: un número, una fecha o una cadena para buscar.</p>
  <p id="par_id981582552517872" class="paragraph" dir="auto"><span class="emph">distingue mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (predeterminado =<span class="literal">Falso</span></p>
  <p id="par_id641582553128490" class="paragraph" dir="auto"><span class="emph">sortorder</span>: puede ser «ASC», «DESC» o «» (sin ordenar). El valor predeterminado es «».</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Contains(Array("A","B","c","D"), "C", SortOrder := "ASC") ' True
    SF_Array.Contains(Array("A","B","c","D"), "C", CaseSensitive := True) ' False
  </code></pre></div>


<a id="ConvertToDictionary"></a>
  
  <a id="bm_id441582557214489"></a>
    <meta itemprop="keywords" content="Array service,ConvertToDictionary">
  
  <h2 id="hd_id541582557214489" dir="auto">ConvertToDictionary</h2>
    <p id="par_id71582557214489" class="paragraph" dir="auto">Almacena el contenido de una matriz de dos columnas en un objeto <a target="_top" href="es/text/sbasic/shared/03/sf_dictionary.html">ScriptForge.Dictionary</a>.<br>La clave se extraerá de la primera columna; el elemento, de la segunda.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id291626977283235" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.ConvertToDictionary(array_2d: any[0..*, 0..1]): obj</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id561582557214489" class="paragraph" dir="auto"><span class="emph">array_2d</span>: los datos que se convertirán en un objeto <span class="literal">ScriptForge.Dictionary</span>.</p>
  <ul itemprop="Unordered" itemscope="true" itemtype="http://schema.org/ItemList" dir="auto">
    <li itemprop="itemListElement" itemscope="true" itemtype="http://schema.org/ItemListUnordered" dir="auto">
        <p id="par_id781626977460310" class="listitem" dir="auto">La primera columna debe contener exclusivamente cadenas con una longitud superior a cero, en cualquier orden. Estos valores se utilizarán como etiquetas en el diccionario.</p>
    </li>
    <li itemprop="itemListElement" itemscope="true" itemtype="http://schema.org/ItemListUnordered" dir="auto">
        <p id="par_id511626977461127" class="listitem" dir="auto">La segunda columna contiene los datos que se asociarán a la etiqueta correspondiente en el diccionario.</p>
    </li>
  </ul>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant, b As Variant
    a = SF_Array.AppendColumn(Array("a", "b", "c"), Array(1, 2, 3))
    b = SF_Array.ConvertToDictionary(a)
    MsgBox b.Item("c") ' 3
  </code></pre></div>


<a id="Copy"></a>
  
  <a id="bm_id251582558126024"></a>
    <meta itemprop="keywords" content="Array service,Copy">
  
  <h2 id="hd_id991627154151529" dir="auto">Copy</h2>
  <p id="par_id571627154604275" class="paragraph" dir="auto">Crea una copia de una matriz 1D o 2D.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id901627155659667" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Copy(array_nd: any[0..*]): any[0..*]</span>
  </p>
  <p id="par_id901627155659568" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Copy(array_nd: any[0..*, 0..*]): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id191627155816815" class="paragraph" dir="auto"><span class="emph">matriz_nd</span>: La matriz 1D o 2D que se copiará.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <p id="par_id451627155478940" class="paragraph" dir="auto">Una simple asignación de un objeto <span class="literal">Array</span> copiará su referencia en lugar de crear una copia del contenido del objeto. Vea el ejemplo a continuación:</p>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a as Variant, b as Variant
    a = Array(1, 2, 3)
    ' La asignación siguiente se hace por referencia
    b = a
    ' Por lo tanto, si se cambian los valores en «b» también cambiará «a»
    b(0) = 10
    MsgBox a(0) ' 10
  </code></pre></div>
  <p id="par_id701627155874259" class="paragraph" dir="auto">Al usar el<span class="literal">Copiar</span>método, una copia de la totalidad<span class="literal">matriz</span>se hace el objeto. En el siguiente ejemplo,<span class="literal">a</span>y<span class="literal">b</span>son objetos diferentes y valores cambiantes en<span class="literal">b</span>no afectará los valores en<span class="literal">a</span></p>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a as Variant, b as Variant
    a = Array(1, 2, 3)
    ' Crea una copia de «a» usando el método «Copy»
    b = SF_Array.Copy(a)
    b(0) = 10
    MsgBox a(0) ' 1
  </code></pre></div>


<a id="CountDims"></a>
  
  <a id="bm_id251582558126024"></a>
    <meta itemprop="keywords" content="Array service,CountDims">
  
  <h2 id="hd_id761582558126025" dir="auto">CountDims</h2>
  <p id="par_id671582558126025" class="paragraph" dir="auto">Cuente el número de dimensiones de una matriz. El resultado puede ser mayor que dos. <br>Si el argumento no es una matriz, devuelve -1 <br>Si la matriz no está inicializada, devuelve 0.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id591626977644227" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.CountDims(array_nd: any): int</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id771582558126027" class="paragraph" dir="auto"><span class="emph">matriz_nd</span>: La matriz a examinar.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a(1 To 10, -3 To 12, 5)
    MsgBox SF_Array.CountDims(a) ' 3
  </code></pre></div>


<a id="Difference"></a>
  
  <a id="bm_id941582558644286"></a>
    <meta itemprop="keywords" content="Array service,Difference">
  
  <h2 id="hd_id21582558644287" dir="auto">Difference</h2>
  <p id="par_id91582558644287" class="paragraph" dir="auto">Cree un conjunto, como una matriz de base cero, aplicando el operador de diferencia en las dos matrices de entrada. Los elementos resultantes se originan en la primera matriz y no en la segunda.
<br>La matriz resultante se ordena en orden ascendente. <br>Ambas matrices de entrada deben llenarse de manera homogénea, sus elementos deben ser escalares del mismo tipo. Los elementos <span class="literal">Vacío</span> y <span class="literal"> Nulo </span> están prohibidos. <br>La comparación de texto puede distinguir entre mayúsculas y minúsculas o no.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id311626977822374" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Difference(array1_1d: any[0..*], array2_1d: any[0..*], casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id271582558644287" class="paragraph" dir="auto"><span class="emph">matriz_id</span>: Una matriz de referencia unidimensional, cuyos elementos se examinan para eliminarlos.</p>
  <p id="par_id141582558644287" class="paragraph" dir="auto"><span class="emph">matriz2_1d</span>: Una matriz unidimensional, cuyos elementos se restan de la primera matriz de entrada.</p>
  <p id="par_id291582559651473" class="paragraph" dir="auto"><span class="emph">distingue mayúsculas y minúsculas</span>: este argumento solo es aplicable si las matrices se completan con cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Difference(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
        ' ("A", "B")
  </code></pre></div>


<a id="ExportToTextFile"></a>
  
  <a id="bm_iid101582629162107"></a>
    <meta itemprop="keywords" content="Array service,ExportToTextFile">
  
  <h2 id="hd_id231586179707778" dir="auto">ExportToTextFile</h2>
  <p id="par_id941586179707156" class="paragraph" dir="auto">Escriba todos los elementos de la matriz secuencialmente en un archivo de texto. Si el archivo ya existe, se sobrescribirá sin previo aviso.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id701626978046046" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.ExportToTextFile(array_1d: any[0..*], filename: str, [encoding: str]): bool</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id100158617970719" class="paragraph" dir="auto"><span class="emph">matriz_1d</span>: La matriz a exportar. Debe contener solo cadenas.</p>
  <p id="par_id101586179707232" class="paragraph" dir="auto"><span class="emph">Nombre del archivo</span>: El nombre del archivo de texto donde se escribirán los datos. El nombre debe expresarse de acuerdo con la actual<span class="literal">Nombre de archivo</span>propiedad de la<span class="literal">Sistema de archivos FS</span>Servicio.</p>
  <p id="par_id70158617970791" class="paragraph" dir="auto"><span class="emph">codificación</span>: El conjunto de caracteres que se debe utilizar. Utilice uno de los nombres enumerados en<a target="_blank" href="https://www.iana.org/assignments/character-sets/character-sets.xhtml">Conjuntos de caracteres de la IANA</a>. Tenga en cuenta que es posible que LibreOffice no implemente todos los conjuntos de caracteres existentes (el valor predeterminado es "UTF-8").</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    SF_Array.ExportToTextFile(Array("A","B","C","D"), "C:\Temp\A short file.txt")
  </code></pre></div>


<a id="ExtractColumn"></a>
  
  <a id="bm_id891582560281081"></a>
    <meta itemprop="keywords" content="Array service,ExtractColumn">
  
  <h2 id="hd_id721582560281081" dir="auto">ExtractColumn</h2>
  <p id="par_id171582560281082" class="paragraph" dir="auto">Extrae de una matriz de dos dimensiones una columna específica como una matriz nueva.<br>Los límites inferior, <span class="literal">LBound</span>, y superior, <span class="literal">UBound</span>, son idénticos a los de la primera dimension de la matriz de entrada.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id251626978426782" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.ExtractColumn(array_2d: any[0..*, 0..*], columnindex: int): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id301582560281083" class="paragraph" dir="auto"><span class="emph">matriz_2d</span>: La matriz de la que se extrae.</p>
  <p id="par_id421582560281084" class="paragraph" dir="auto"><span class="emph">índice de columna</span>: El número de columna a extraer - debe estar en el intervalo<span class="literal">[Límite L, Límite U]</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    'Crea una matriz de 3x3: |1, 2, 3|
    '                      |4, 5, 6|
    '                      |7, 8, 9|
    Dim mat as Variant, col as Variant
    mat = SF_Array.AppendRow(Array(), Array(1, 2, 3))
    mat = SF_Array.AppendRow(mat, Array(4, 5, 6))
    mat = SF_Array.AppendRow(mat, Array(7, 8, 9))
    'Extrae la tercera columna: |3, 6, 9|
    col = SF_Array.ExtractColumn(mat, 2)
  </code></pre></div>


<a id="ExtractRow"></a>
  
  <a id="bm_id891582561395261"></a>
    <meta itemprop="keywords" content="Array service,ExtractRow">
  
  <h2 id="hd_id921582561457245" dir="auto">ExtractRow</h2>
  <p id="par_id211582561467219" class="paragraph" dir="auto">Extraiga de una matriz de dos dimensiones una fila específica como una nueva matriz<br>Es mas bajo<span class="literal">Límite L</span>y superior<span class="literal">Limite U</span>los límites son idénticos a los de la segunda dimensión de la matriz de entrada.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id391626978560113" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.ExtractRow(array_2d: any[0..*, 0..*], rowindex: int): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id911582561542889" class="paragraph" dir="auto"><span class="emph">matriz_2d</span>: La matriz de la que se extrae.</p>
  <p id="par_id441582561551202" class="paragraph" dir="auto"><span class="emph">índice de fila</span>: El número de fila a extraer - debe estar en el intervalo<span class="literal">[Límite L, Límite U]</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    'Crea una matriz de 3x3: |1, 2, 3|
    '                      |4, 5, 6|
    '                      |7, 8, 9|
    Dim mat as Variant, row as Variant
    mat = SF_Array.AppendRow(Array(), Array(1, 2, 3))
    mat = SF_Array.AppendRow(mat, Array(4, 5, 6))
    mat = SF_Array.AppendRow(mat, Array(7, 8, 9))
    'Extrae la primera fila: |1, 2, 3|
    row = SF_Array.ExtractRow(mat, 0)
  </code></pre></div>


<a id="Flatten"></a>
  
  <a id="bm_id261585757822682"></a>
    <meta itemprop="keywords" content="Array service,Flatten">
  
  <h2 id="hd_id351585757822637" dir="auto">Flatten</h2>
  <p id="par_id431585757822181" class="paragraph" dir="auto">Apile todos los elementos individuales de una matriz y todos los elementos de sus submatrices en una matriz nueva sin submatrices. Las submatrices vacías se ignoran y aquellas con un número de dimensiones mayor que uno no se aplanan.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id551626978750851" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Flatten(array_1d: any[0..*]): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id431585757822869" class="paragraph" dir="auto"><span class="emph">matriz_1d</span>: La matriz preexistente puede estar vacía.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Flatten(Array(Array(1, 2, 3), 4, 5))
        ' (1, 2, 3, 4, 5)
  </code></pre></div>
  <div class="tip">
<div class="noteicon" dir="auto"><img src="media/icon-themes/res/helpimg/tip.svg" alt="tip" style="width:40px;height:40px;"></div>
<div class="notetext"><p id="par_id291610040786530" dir="auto">Puede hacer uso de métodos tales como <span class="literal">Flatten</span>, <span class="literal">Append</span> y <span class="literal">Prepend</span> para concatenar un conjunto de matrices 1D en una sola matriz 1D.</p></div>
</div>
<br>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <p id="par_id941610040961148" class="paragraph" dir="auto">El siguiente es un ejemplo de cómo los métodos<span class="literal">Aplanar</span>y<span class="literal">Adjuntar</span>se pueden combinar para concatenar tres matrices.</p>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Crea tres matrices para este ejemplo.
    Dim a as Variant, b as Variant, c as Variant
    a = Array(1, 2, 3)
    b = Array(4, 5)
    c = Array(6, 7, 8, 9)
    'Concatena las tres matrices en una sola matriz unidimensional
    Dim arr as Variant
    arr = SF_Array.Flatten(SF_Array.Append(a, b, c))
    '(1, 2, 3, 4, 5, 6, 7, 8, 9)
  </code></pre></div>


<a id="ImportFromCSVFile"></a>
  
  <a id="bm_iid101582629162107"></a>
    <meta itemprop="keywords" content="Array service,ImportFromCSVFile">
  
  <h2 id="hd_id581585561482142" dir="auto">ImportFromCSVFile</h2>
  <p id="par_id611585561482373" class="paragraph" dir="auto">Importe los datos contenidos en un archivo de valores separados por comas (CSV). La coma puede reemplazarse por cualquier carácter.</p>
  <p id="par_id41585562158392" class="paragraph" dir="auto">El formato CSV aplicable se describe en la página <a target="_blank" href="https://tools.ietf.org/html/rfc4180">Formato común y tipo MIME para archivos CSV del IETF</a> (en inglés).</p>
  <p id="par_id641585562341028" class="paragraph" dir="auto">Cada línea del archivo contiene un registro completo (no se permite la división de líneas).<br>Sin embargo, secuencias como<span class="literal">\n</span>,<span class="literal">\t</span>,...se dejan sin cambios. Usar<span class="literal">SF_Cadena</span>Método Un escape () para gestionarlos.</p>
  <p id="par_id231585562475026" class="paragraph" dir="auto">El método devuelve una matriz de dos dimensiones cuyas filas corresponden a un solo registro leído en el archivo y cuyas columnas corresponden a un campo del registro. No se comprueba la coherencia de los tipos de campo en las columnas. Se hará una mejor conjetura para identificar los tipos numéricos y de fecha.</p>
  <p id="par_id101585562548245" class="paragraph" dir="auto">Si una línea contiene menos o más campos que la primera línea del archivo, se generará una excepción. Sin embargo, las líneas vacías simplemente se ignoran. Si el tamaño del archivo supera el límite de número de elementos (consulte el interior del código), se genera una advertencia y la matriz se trunca.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id121626979017138" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.ImportFromCSVFile(filename: str, delimiter: str = ',', dateformat: str = ''): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id441585561482121" class="paragraph" dir="auto"><span class="emph">Nombre del archivo</span>:El nombre del archivo de texto que contiene los datos. El nombre debe expresarse de acuerdo con la actual<span class="literal">nombre de archivo</span>propiedad de la<span class="literal">Sistema de archivos FS</span>Servicio.</p>
  <p id="par_id251585561482929" class="paragraph" dir="auto"><span class="emph">delimitador</span>: Un solo carácter, por lo general, una coma, un punto y coma o un carácter TABULADOR (Predeterminado = ",").</p>
  <p id="par_id631585563491559" class="paragraph" dir="auto"><span class="emph">dateformat</span>: un mecanismo especial manipula las fechas cuando el valor de <span class="literal">dateformat</span> es «AAAA-MM-DD», «DD-MM-AAAA» o «MM-DD-AAAA». El guion (-) puede sustituirse por un punto (.), una barra (/) o un espacio. Se pasarán por alto otros formatos de fecha. Las fechas expresadas como una cadena vacía «» se consideran texto normal.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <p id="par_id61585564516409" class="paragraph" dir="auto">Considere el archivo CSV "mi archivo .csv" con los siguientes contenidos:</p>
  <p id="par_id281626980354105" class="paragraph" dir="auto"><span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">Nombre, fecha de nacimiento, dirección, ciudad</span></p>
  <p id="par_id301626980648833" class="paragraph" dir="auto"><span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">Anna, 31/03/2002, "Calle de la Iglesia, 21", Toulouse</span></p>
  <p id="par_id881626980658900" class="paragraph" dir="auto"><span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">Fred, 04/05/1998,"Rue Albert Einstein, 113A",Carcasona</span></p>
  <p id="par_id181626979812772" class="paragraph" dir="auto">Los siguientes ejemplos en Basic y Python leen el contenido del archivo CSV en un objeto <span class="literal"> Matriz</span>objeto.</p>
  <div class="embedded">
<a id="In_Basic"></a>
<h5 id="hd_id191620312698501" dir="auto">En BASIC</h5>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim arr As Variant
    arr = SF_matriz. Importar desde archivo CSV ("C:\Temp\myFile.csv", Formato de fecha: = "YYYY/MM/DD")
    MsgBox arr(0, 3) ' Ciudad
    MsgBox arr(1, 2) ' Rue de l'église, 21
    MsgBox arr(1, 3) ' Tolosa
  </code></pre></div>
  <div class="embedded">
<a id="In_Python"></a>
<h5 id="hd_id831620312769993" dir="auto">En Python</h5>
</div>
  <div class="pycode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-python line-numbers">
    from scriptforge import CreateScriptService
    svc = CreateScriptService("Array")
    bas = CreateScriptService("Basic")
    arr = svc.Importar desde archivo CSV(r"C:\Temp\myFile.csv", formato de fecha = "YYYY/MM/DD")
    bas.MsgBox(arr[0][3]) # Ciudad
    bas.MsgBox(arr[1][2]) # Rue de l'église, 21
    bas.MsgBox(arr[1][3]) # Toulouse
  </code></pre></div>


<a id="IndexOf"></a>
  
  <a id="bm_id361582562709465"></a>
    <meta itemprop="keywords" content="Array service,IndexOf">
  
  <h2 id="hd_id741582562715741" dir="auto">IndexOf</h2>
  <p id="par_id211582562721860" class="paragraph" dir="auto">Busca un número, una cadena o una fecha en una matriz unidimensional. La comparación del texto puede o no distinguir entre mayúsculas y minúsculas.<br>Si la matriz está ordenada, debe llenarse de manera homogénea; esto es, todos los elementos deben ser escalares del mismo tipo (los elementos <span class="literal">Empty</span> y <span class="literal">Null</span> no están permitidos).<br>El resultado del método es impredecible si se le pasa una matriz «ordenada» que en realidad no lo está.<br>Se efectúa una búsqueda binaria en las matrices ordenadas. Si no, simplemente se leen de arriba abajo, ignorando los elementos <span class="literal">Empty</span> y <span class="literal">Null</span>.<br><br>El método devuelve <span class="literal">LBound(input array) - 1</span> si la búsqueda no fue exitosa.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id741626980743030" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.IndexOf(array_1d: any[0..*], tofind: any, casesensitive: bool = False, sortorder: str = ''): int</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id315825627687760" class="paragraph" dir="auto"><span class="emph">array_1d</span>: la matriz que se utilizará en la búsqueda.</p>
  <p id="par_id511582562775516" class="paragraph" dir="auto"><span class="emph">tofind</span>: un número, una fecha o una cadena para buscar.</p>
  <p id="par_id311582562787187" class="paragraph" dir="auto"><span class="emph">distingue mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (predeterminado =<span class="literal">falso</span>).</p>
  <p id="par_id421582562794501" class="paragraph" dir="auto"><span class="emph">sortorder</span>: puede ser «ASC», «DESC» o «» (sin ordenar). El valor predeterminado es «».</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    MsgBox SF_Array.IndexOf(Array("A","B","c","D"), "C", SortOrder := "ASC") ' 2
    MsgBox SF_Array.IndexOf(Array("A","B","c","D"), "C", CaseSensitive := True) ' -1
  </code></pre></div>


<a id="Insert"></a>
  
  <a id="bm_id371582626951108"></a>
    <meta itemprop="keywords" content="Array service,Insert">
  
  <h2 id="hd_id101582626951109" dir="auto">Insert</h2>
  <p id="par_id911582626951109" class="paragraph" dir="auto">Inserte antes de un índice dado de la matriz de entrada los elementos enumerados como argumentos.<br>Los argumentos se insertan a ciegas. Cada uno de ellos puede ser un escalar de cualquier tipo o un subarreglo.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id701626981031599" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Insert(array_1d: any[0..*], before: int, arg0: any, [arg1: any] ...): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id251582626951111" class="paragraph" dir="auto"><span class="emph">matriz_1d</span>: La matriz preexistente puede estar vacía.</p>
  <p id="par_id361582626951111" class="paragraph" dir="auto"><span class="emph">antes de</span>: El índice antes del cual insertar; debe estar en el intervalo<span class="literal">[Límite L, Límite U+ 1]</span>.</p>
  <p id="par_id41582626951111" class="paragraph" dir="auto"><span class="emph">arg0, arg1, ...</span>: elementos que se insertarán en<span class="literal">matriz_1d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Insert(Array(1, 2, 3), 2, "a", "b")
        ' (1, 2, "a", "b", 3)
  </code></pre></div>


<a id="InsertSorted"></a>
  
  <a id="bm_id311582627664147"></a>
    <meta itemprop="keywords" content="Array service,InsertSorted">
  
  <h2 id="hd_id981582627664147" dir="auto">InsertSorted</h2>
  <p id="par_id441582627664147" class="paragraph" dir="auto">Inserta en una matriz ordenada un nuevo elemento en su lugar. <br>La matriz debe llenarse de manera homogénea, lo que significa que todos los elementos deben ser escalares del mismo tipo. Los elementos <br><span class="literal">Vacío</span> y <span class="literal">Nulo</span> están prohibidos.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id561626981419647" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.InsertSorted(array_1d: any[0..*], item: any, sortorder: str = 'ASC', casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id121582627664147" class="paragraph" dir="auto"><span class="emph">matriz_1d</span>:La matriz en la que se insertará el valor.</p>
  <p id="par_id315826276641480" class="paragraph" dir="auto"><span class="emph">artículo</span>: el valor escalar que se va a insertar, del mismo tipo que los elementos matriciales existentes.</p>
  <p id="par_id415826279771170" class="paragraph" dir="auto"><span class="emph">Orden de clasificación</span>: Puede ser "ASC" (predeterminado) o "DESC".</p>
  <p id="par_id701582627970037" class="paragraph" dir="auto"><span class="emph">distingue mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (predeterminado =<span class="literal">falso</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.InsertSorted(Array("A", "C", "a", "b"), "B", CaseSensitive := True)
        ' ("A", "B", "C", "a", "b")
  </code></pre></div>


<a id="Intersection"></a>
  
  <a id="bm_iid101582629162107"></a>
    <meta itemprop="keywords" content="Array service,Intersection">
  
  <h2 id="hd_id841582629169550" dir="auto">Intersection</h2>
  <p id="par_id71582629177169" class="paragraph" dir="auto">Cree un conjunto, como una matriz de base cero, aplicando el operador de conjunto de intersección en las dos matrices de entrada. Los elementos resultantes están contenidos en ambas matrices. <br>La matriz resultante se ordena en orden ascendente. <br>Ambas matrices de entrada deben llenarse de manera homogénea, en otras palabras, todos los elementos deben ser escalares del mismo tipo. Los elementos <span class="literal">Vacío</span> y <span class="literal">Nulo</span> están prohibidos. <br>La comparación de texto puede distinguir entre mayúsculas y minúsculas o no.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id91626981727462" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Intersection(array1_1d: any[0..*], array2_1d: any[0..*], casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id881582629216169" class="paragraph" dir="auto"><span class="emph">matriz1_1d</span>: La primera matriz de entrada.</p>
  <p id="par_id191582629223038" class="paragraph" dir="auto"><span class="emph">matriz2_1d</span>:La segunda matriz de entrada.</p>
  <p id="par_id71582629230275" class="paragraph" dir="auto"><span class="emph">distingue mayúsculas y minúsculas</span>: se aplica a las matrices rellenadas con elementos de texto (predeterminado =<span class="literal">falso</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Intersection(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
        ' ("C", "b")
  </code></pre></div>


<a id="Join2D"></a>
  
  <a id="bm_id231583064481294"></a>
    <meta itemprop="keywords" content="Array service,Join2D">
  
  <h2 id="hd_id641583064481282" dir="auto">Join2D</h2>
  <p id="par_id431583064481679" class="paragraph" dir="auto">Únase a una matriz bidimensional con dos delimitadores, uno para las columnas y otro para las filas.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id421626982116561" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Join2D(array_2d: any [0..*, 0..*], [columndelimiter: str], [rowdelimiter: str], [quote: str]): str</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id821583064481534" class="paragraph" dir="auto"><span class="emph">matriz_2d</span>: Cada elemento debe ser texto, un número, una fecha o un valor booleano.<br>Las fechas se transforman al formato AAAA-MM-DD hh:mm:ss.<br>los elementos no válidos se reemplazan por una cadena de longitud cero.</p>
  <p id="par_id171583066989446" class="paragraph" dir="auto"><span class="emph">delimitador de columna</span>: delimita cada columna (predeterminado = Tabulador/entero(9)).</p>
  <p id="par_id431583067008842" class="paragraph" dir="auto"><span class="emph">delimitador de fila</span>&gt;: delimita cada fila (predeterminado = Linea de alimentación/Entero(10))</p>
  <p id="par_id541583067456273" class="paragraph" dir="auto"><span class="emph">quote</span>: si es <span class="literal">True</span>, entrecomilla las cadenas. El valor predeterminado es <span class="literal">False</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    ' arr = | 1, 2, "A", [2020-02-29], 51, 2, "A", [2020-02-29], 5           |
    '       | 6, 7, "this is a string", 9, 106, 7, "this is a string", 9, 10 |
    Dim arr as Variant : arr = Array()
    arr = SF_Array.AppendRow(arr, Array(1, 2, "A", [2020-02-29], 51, 2, "A", [2020-02-29], 5))
    arr = SF_Array.AppendRow(arr, Array(6, 7, "this is a string", 9, 106, 7, "this is a string", 9, 10))
    Dim arrText as String
    arrText = SF_Array.Join2D(arr, ",", "/", False)
    ' 1,2,A,,51,2,A,,5/6,7,this is a string,9,106,7,this is a string,9,10
  </code></pre></div>


<a id="Prepend"></a>
  
  <a id="bm_id701582629972724"></a>
    <meta itemprop="keywords" content="Array service,Prepend">
  
  <h2 id="hd_id931582629986047" dir="auto">Prepend</h2>
  <p id="par_id731582630075045" class="paragraph" dir="auto">Anteponga al comienzo de la matriz de entrada los elementos enumerados como argumentos.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id281626997292148" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Prepend(array_1d: any[0..*], arg0: any, [arg1: any] ...): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id321582630107068" class="paragraph" dir="auto"><span class="emph">matriz_1d</span>: La matriz preexistente puede estar vacía.</p>
  <p id="par_id915826301138550" class="paragraph" dir="auto"><span class="emph">arg0, arg1…</span> una lista de elementos para anteponer a <span class="literal">array_1d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Prepend(Array(1, 2, 3), 4, 5)
        ' (4, 5, 1, 2, 3)
  </code></pre></div>


<a id="PrependColumn"></a>
  
  <a id="bm_id211582643223924"></a>
    <meta itemprop="keywords" content="Array service,PrependColumn">
  
  <h2 id="hd_id25158264322311" dir="auto">PrependColumn</h2>
  <p id="par_id91582643223166" class="paragraph" dir="auto">Anteponga al lado izquierdo de una matriz de dos dimensiones una nueva columna. La matriz resultante tiene los mismos límites inferiores que la matriz inicial de dos dimensiones.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id601626997478388" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.PrependColumn(array_2d: any[0..*, 0..*], column: any[0..*]): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id621582643223545" class="paragraph" dir="auto"><span class="emph">array_2d</span>: La matriz preexistente puede estar vacía. Si esa matriz tiene 1 dimensión, se considera como la última columna de la matriz de 2 dimensiones resultante.</p>
  <p id="par_id381582643223870" class="paragraph" dir="auto"><span class="emph">column</span>: una matriz unidimensional con la misma cantidad de elementos que las filas que hay en <span class="literal">array_2d</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant, b As variant
    a = SF_Array.PrependColumn(Array(1, 2, 3), Array(4, 5, 6))
        ' ((4, 1), (5, 2), (6, 3))
    b = SF_Array.PrependColumn(Array(), Array(1, 2, 3))
        ' ∀ i ∈ {0 ≤ i ≤ 2} : b(0, i) ≡ i
  </code></pre></div>


<a id="PrependRow"></a>
  
  <a id="bm_id321582643611165"></a>
    <meta itemprop="keywords" content="Array service,PrependRow">
  
  <h2 id="hd_id921582643611272" dir="auto">PrependRow</h2>
  <p id="par_id851582643611291" class="paragraph" dir="auto">Anteponga una nueva fila al comienzo de una matriz bidimensional. La matriz resultante tiene los mismos límites inferiores que la matriz bidimensional inicial.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id791626997749524" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.PrependRow(array_2d: any[0..*, 0..*], row: any[0..*]): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id991582643611645" class="paragraph" dir="auto"><span class="emph">matriz bidimencional</span>: la matriz preexistente puede estar vacía. Si esa matriz tiene 1 dimensión, se considera como la última fila de la matriz bidimensional resultante.</p>
  <p id="par_id321582643611415" class="paragraph" dir="auto"><span class="emph">fila</span>: una matriz unidimensional que contiene tantos elementos como columnas hay en <span class="literal">mateiz bidimencional</span>.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant, b As variant
    a = SF_Array.PrependRow(Array(1, 2, 3), Array(4, 5, 6))
        ' ((4, 5, 6), (1, 2, 3))
    b = SF_Array.PrependRow(Array(), Array(1, 2, 3))
        ' ∀ i ∈ {0 ≤ i ≤ 2} : b(i, 0) ≡ i
  </code></pre></div>


<a id="RangeInit"></a>
  
  <a id="bm_id321582648204011"></a>
    <meta itemprop="keywords" content="Array service,RangeInit">
  
  <h2 id="hd_id61582648204011" dir="auto">RangeInit</h2>
  <p id="par_id441582648204012" class="paragraph" dir="auto">Inicialice una nueva matriz de base cero con valores numéricos.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id851626997928653" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.RangeInit(from: num, upto: num, [bystep: num]): num[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id591582648204013" class="paragraph" dir="auto"><span class="emph">from</span>: valor del primer elemento.</p>
  <p id="par_id31582648204013" class="paragraph" dir="auto"><span class="emph">hasta</span>: El último elemento no debe exceder de <span class="literal">Hasta</span>.</p>
  <p id="par_id581582648204014" class="paragraph" dir="auto"><span class="emph">bystep</span>: la diferencia entre dos elementos sucesivos (de manera predeterminada es 1).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.RangeInit(10, 1, -1)
        ' (10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
  </code></pre></div>


<a id="Reverse"></a>
  
  <a id="bm_id31582648806764"></a>
    <meta itemprop="keywords" content="Array service,Reverse">
  
  <h2 id="hd_id111582648806764" dir="auto">Reverse</h2>
  <p id="par_id451582648806764" class="paragraph" dir="auto">Devuelve la matriz unidimensional de entrada invertida.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id71626998176865" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Reverse(array_1d: any[0..*]): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id31582648806765" class="paragraph" dir="auto"><span class="emph">array_1d</span>: la matriz para invertir.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Reverse(Array("a", 2, 3, 4))
        ' (4, 3, 2, "a")
  </code></pre></div>


<a id="Shuffle"></a>
  
  <a id="bm_id531582649200087"></a>
    <meta itemprop="keywords" content="Array service,Shuffle">
  
  <h2 id="hd_id731582649200088" dir="auto">Shuffle</h2>
  <p id="par_id151582649200088" class="paragraph" dir="auto">Devuelve una permutación aleatoria de una matriz unidimensional.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id191626998317797" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Shuffle(array_1d: any[0..*]): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id11582649200088" class="paragraph" dir="auto"><span class="emph">matriz unidimencional</span>: La matriz a barajar.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Shuffle(Array(1, 2, 3, 4))
        ' La matriz "a" ahora está en orden aleatorio, p.i. (2, 3, 1, 4)
  </code></pre></div>


<a id="Slice"></a>
  
  <a id="bm_id20158618418514"></a>
    <meta itemprop="keywords" content="Array service,Slice">
  
  <h2 id="hd_id281586184185623" dir="auto">Slice</h2>
  <p id="par_id111586184185502" class="paragraph" dir="auto">Devuelve un subconjunto de una matriz unidimensional.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id801626998508832" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Slice(array_1d: any[0..*], from: int, [upto: int]): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id201586184185438" class="paragraph" dir="auto"><span class="emph">matriz unidimencional</span>: La matriz a dividir.</p>
  <p id="par_id921586184482370" class="paragraph" dir="auto"><span class="emph">de</span>: el índice inferior en <span class="literal">matriz unidimencional</span> del subarreglo a extraer (<span class="literal">de</span> incluido)</p>
  <p id="par_id211586184471488" class="paragraph" dir="auto"><span class="emph">hasta</span>: El índice superior en <span class="literal">matriz unidimencional</span> del subarreglo a extraer (<span class="literal">hasta</span> incluido). El valor predeterminado es el límite superior de <span class="literal">matriz unidimencional</span>. Si <span class="literal">hasta</span> &lt; <span class="literal">desde</span> entonces la matriz devuelta está vacía.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Slice(Array(1, 2, 3, 4, 5), 1, 3) ' (2, 3, 4)
  </code></pre></div>


<a id="Sort"></a>
  
  <a id="bm_id561582649483854"></a>
    <meta itemprop="keywords" content="Array service,Sort">
  
  <h2 id="hd_id65158264948384" dir="auto">Sort</h2>
  <p id="par_id171582649483675" class="paragraph" dir="auto">Ordene una matriz de una dimensión en orden ascendente o descendente. Las comparaciones de texto pueden distinguir entre mayúsculas y minúsculas o no. <br>La matriz debe llenarse de manera homogénea, lo que significa que los elementos deben ser escalares del mismo tipo. Se permiten elementos <br><span class="literal">Vacío</span> y <span class="literal">Nulo</span>. Convencionalmente <span class="literal">Vacío</span> &lt; <span class="literal">Nulo</span> &lt; cualquier otro valor escalar.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id711626998747838" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Sort(array_1d: any[0..*], sortorder: str, casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id71158264948346" class="paragraph" dir="auto"><span class="emph">matriz unidimencional</span>: La matriz a ordenar.</p>
  <p id="par_id21582649483175" class="paragraph" dir="auto"><span class="emph">ordenar</span>: puede ser "ASC" (predeterminado) o "DESC".</p>
  <p id="par_id301582649483187" class="paragraph" dir="auto"><span class="emph">sensible a mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Sort(Array("a", "A", "b", "B", "C"), CaseSensitive := True)
        ' ("A", "B", "C", "a", "b")
  </code></pre></div>


<a id="SortColumns"></a>
  
  <a id="bm_id51582650186361"></a>
    <meta itemprop="keywords" content="Array service,SortColumns">
  
  <h2 id="hd_id20158265018616" dir="auto">SortColumns</h2>
  <p id="par_id801582650186957" class="paragraph" dir="auto">Devuelve una permutación de las columnas de una matriz de dos dimensiones, ordenadas según los valores de una fila dada. <br>La fila debe llenarse de manera homogénea, lo que significa que todos los elementos deben ser escalares del mismo tipo. Se permiten elementos <br><span class="literal">Vacío</span> y <span class="literal">Nulo</span>. Convencionalmente <span class="literal">Vacío</span> &lt; <span class="literal">Nulo</span> &lt; cualquier otro valor escalar.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id301626998975171" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.SortColumns(array_2d: any[0..*, 0..*], rowindex: int, sortorder: str, casesensitive: bool = False): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id921582650186869" class="paragraph" dir="auto"><span class="emph">matriz bidimensional</span>: la matriz bidimensional para ordenar.</p>
  <p id="par_id311582650186221" class="paragraph" dir="auto"><span class="emph">índice de fila</span>: El índice de la fila que se usará como referencia para ordenar las columnas.</p>
  <p id="par_id34158265018698" class="paragraph" dir="auto"><span class="emph">ordenar</span>: puede ser "ASC" (predeterminado) o "DESC".</p>
  <p id="par_id91158265018699" class="paragraph" dir="auto"><span class="emph">sensible a mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    ' arr = | 5, 7, 3 |
    '       | 1, 9, 5 |
    '       | 6, 1, 8 |
    Dim arr as Variant : arr = Array(5, 7, 3)
    arr = SF_Array.AppendRow(arr, Array(1, 9, 5))
    arr = SF_Array.AppendRow(arr, Array(6, 1, 8))
    arr = SF_Array.SortColumns(arr, 2, "ASC")
    ' arr = | 7, 5, 3 |
    '       | 9, 1, 5 |
    '       | 1, 6, 8 |
  </code></pre></div>


<a id="SortRows"></a>
  
  <a id="bm_id301582650954674"></a>
    <meta itemprop="keywords" content="Array service,SortRows">
  
  <h2 id="hd_id951582650954980" dir="auto">SortRows</h2>
  <p id="par_id751582650954576" class="paragraph" dir="auto">Devuelve una permutación de las filas de una matriz de dos dimensiones, ordenada según los valores de una columna determinada. <br>La columna debe llenarse de manera homogénea, por lo tanto, todos los elementos deben ser escalares del mismo tipo. Se permiten elementos <br><span class="literal">Vacío</span> y <span class="literal">Nulo</span>. Convencionalmente <span class="literal">Vacío</span> &lt; <span class="literal">Nulo</span> &lt; cualquier otro valor escalar.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id681626999672323" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.SortRows(array_2d: any[0..*, 0..*], columnindex: int, sortorder: str, casesensitive: bool = False): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id621582650954370" class="paragraph" dir="auto"><span class="emph">matriz_2d</span>: La matriz a ordenar.</p>
  <p id="par_id361582650954796" class="paragraph" dir="auto"><span class="emph">índice de columna</span>: El índice de la columna que se usará como referencia para ordenar las filas.</p>
  <p id="par_id471582650954416" class="paragraph" dir="auto"><span class="emph">ordenar</span>: puede ser "ASC" (predeterminado) o "DESC".</p>
  <p id="par_id111582650954690" class="paragraph" dir="auto"><span class="emph">sensible a mayúsculas y minúsculas</span>: solo para comparaciones de cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    ' arr = | 5, 7, 3 |
    '       | 1, 9, 5 |
    '       | 6, 1, 8 |
    Dim arr as Variant : arr = Array(5, 7, 3)
    arr = SF_Array.AppendRow(arr, Array(1, 9, 5))
    arr = SF_Array.AppendRow(arr, Array(6, 1, 8))
    arr = SF_Array.SortRows(arr, 0, "ASC")
    ' arr = | 1, 9, 5 |
    '       | 5, 7, 3 |
    '       | 6, 1, 8 |
  </code></pre></div>


<a id="Transpose"></a>
  
  <a id="bm_id591582651575793"></a>
    <meta itemprop="keywords" content="Array service,Transpose">
  
  <h2 id="hd_id671582651575799" dir="auto">Transpose</h2>
  <p id="par_id611582651575637" class="paragraph" dir="auto">Intercambia filas y columnas en una matriz bidimensional.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id561627065272658" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Transpose(array_2d: any[0..*, 0..*]): any[0..*, 0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id61582651575188" class="paragraph" dir="auto"><span class="emph">matriz bidimensional</span>: la matriz bidimensional a transponer.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    ' arr1 = | 1, 2 |
    '        | 3, 4 |
    '        | 5, 6 |
    arr1 = Array(1, 2)
    arr1 = SF_Array.AppendRow(arr1, Array(3, 4))
    arr1 = SF_Array.AppendRow(arr1, Array(5, 6))
    arr2 = SF_Array.Transpose(arr1)
    ' arr2 = | 1, 3, 5 |
    '        | 2, 4, 6 |
    MsgBox arr2(0, 2) ' 5
  </code></pre></div>


<a id="TrimArray"></a>
  
  <a id="bm_id501582652996740"></a>
    <meta itemprop="keywords" content="Array service,TrimArray">
  
  <h2 id="hd_id27158265299667" dir="auto">TrimArray</h2>
  <p id="par_id181582652996483" class="paragraph" dir="auto">Retira de una matriz de una dimensión todas las entradas <span class="literal">Nulo</span>, <span class="literal">Vacio</span> y de longitud cero. <br>Los elementos de cadena se recortan con la función LibreOffice Basic <span class="literal">Trim()</span>.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id151627066407801" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.TrimArray(array_1d: any[0..*]): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id111582652996147" class="paragraph" dir="auto"><span class="emph">matriz unidimensional</span>: La matriz a recortar.</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.TrimArray(Array("A", "B", Null, " D "))
        ' ("A", "B", "D")
  </code></pre></div>


<a id="Union"></a>
  
  <a id="bm_iid101582629162107"></a>
    <meta itemprop="keywords" content="Array service,Union">
  
  <h2 id="hd_id341582653148202" dir="auto">Union</h2>
  <p id="par_id461582653148663" class="paragraph" dir="auto">Construye un conjunto, como una matriz de base cero, aplicando el operador de unión en las dos matrices de entrada. Los elementos resultantes se originan en cualquiera de ambas matrices. <br>La matriz resultante se ordena en orden ascendente. <br>Ambas matrices de entrada deben llenarse de manera homogénea, sus elementos deben ser escalares del mismo tipo. Los elementos <span class="literal">Vacio</span> y <span class="literal">Nulo</span> están prohibidos. <br>La comparación de texto puede distinguir entre mayúsculas y minúsculas o no.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id631627066696377" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Union(array1_1d: any[0..*], array2_1d: any[0..*], casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id4715826531488" class="paragraph" dir="auto"><span class="emph">matriz1 unidimensional</span>: La primera matriz de entrada.</p>
  <p id="par_id51158265314898" class="paragraph" dir="auto"><span class="emph">matriz2 unidimensional</span>: La segunda matriz de entrada.</p>
  <p id="par_id821582653148126" class="paragraph" dir="auto"><span class="emph">distingue entre mayúsculas y minúsculas</span>: aplicable solo si las matrices se completan con cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Union(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
        ' ("A", "B", "C", "Z", "b")
  </code></pre></div>


<a id="Unique"></a>
  
  <a id="bm_iid101582629162107"></a>
    <meta itemprop="keywords" content="Array service,Unique">
  
  <h2 id="hd_id141582653464997" dir="auto">Unique</h2>
  <p id="par_id221582653464565" class="paragraph" dir="auto">Cree un conjunto de valores únicos derivados de la matriz de entrada. <br>La matriz de entrada debe llenarse de manera homogénea, sus elementos deben ser escalares del mismo tipo. Los elementos <span class="literal">Vacio</span> y <span class="literal">Nulo</span> están prohibidos. <br>La comparación de texto puede distinguir entre mayúsculas y minúsculas o no.</p>
  <div class="embedded">
<a id="functsyntax"></a>
<h3 id="hd_id061420171139089682" dir="auto">Sintaxis:</h3>
</div>
  <p id="par_id781627066899997" class="paragraph" dir="auto">
    <span class="input" data-tooltip="Pulse en el texto para copiarlo en el portapapeles">svc.Unique(array_1d: any[0..*], casesensitive: bool = False): any[0..*]</span>
  </p>
  <div class="embedded">
<a id="functparameters"></a>
<h3 id="hd_id061420171139084157" dir="auto">Parámetros:</h3>
</div>
  <p id="par_id521582653464553" class="paragraph" dir="auto"><span class="emph">matriz unidimensional</span>: la matriz de entrada.</p>
  <p id="par_id41158265346441" class="paragraph" dir="auto"><span class="emph">distingue entre mayúsculas y minúsculas</span>: Aplicable solo si la matriz se completa con cadenas (Predeterminado = <span class="literal">Falso</span>).</p>
  <div class="embedded">
<a id="functexample"></a>
<h3 id="hd_id061420171139088233" dir="auto">Ejemplo:</h3>
</div>
  <div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
    Dim a As Variant
    a = SF_Array.Unique(Array("A", "C", "A", "b", "B"), CaseSensitive := True)
        '  ("A", "B", "C", "b")
  </code></pre></div>


<div class="embedded">
<a id="SF_InternalUse"></a>
      <div class="warning">
<div class="noteicon" dir="auto"><img src="media/icon-themes/res/helpimg/warning.svg" alt="warning" style="width:40px;height:40px;"></div>
<div class="notetext"><p id="par_id851506659675843" dir="auto">Todas las rutinas o identificadores BASIC de <span class="literal">ScriptForge</span> precedidas por guion bajo «_» están reservadas para uso interno. No deben utilizarse en macros BASIC o secuencias Python.</p></div>
</div>
<br>
    </div>

<a id="relatedtopics"></a><div class="relatedtopics">
<p class="related" itemprop="mentions" dir="auto"><a id="related"></a><span class="emph">Temas relacionados</span></p>
<div class="relatedbody" itemprop="mentions">
  <div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/scalc/01/04060107.html">Funciones matriciales</a></p></div>
  <div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/shared/calc_functions.html">Using Calc Functions in Macros</a></p></div>
  <div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/shared/03/sf_dictionary.html"><span class="literal">ScriptForge</span>.<span class="literal">Dictionary</span> service</a></p></div>
</div>
</div>

</div>
<div id="DonationFrame"></div>
<footer><h2 style="text-align: center;"><a href="https://books.libreoffice.org" target="_blank">Libros de LibreOffice</a></h2>
<div class="noteicon" dir="auto" style="display:flex;justify-content:center;flex-wrap:wrap;row-gap:15px;">
<img src="media/navigation/libo-writer.svg" alt="Writer Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-calc.svg" alt="Calc Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-impress.svg" alt="Impress Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-draw.svg" alt="Draw Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-base.svg" alt="Base Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-math.svg" alt="Math Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-symbol-black.svg" alt="Getting Started Icon" style="width:60px;height:60px;">
</div>
<div id="DEBUG" class="debug">
<h3 class="bug">Help content debug info:</h3>
<p dir="auto">This page is: <a href="https://opengrok.libreoffice.org/xref/help/source/text/sbasic/shared/03/sf_array.xhp" target="_blank">/text/sbasic/shared/03/sf_array.xhp</a></p>
<p dir="auto">Title is: Servicio ScriptForge.Array (SF_Array)</p>
<p id="bm_module" dir="auto"></p>
<p id="bm_system" dir="auto"></p>
<p id="bm_HID" dir="auto"></p>
</div></footer>
</body>
</html>

Filemanager

Name Type Size Permission Actions
avail_release.html File 8.05 KB 0644
lib_ScriptForge.html File 54.61 KB 0644
lib_depot.html File 5.35 KB 0644
lib_euro.html File 7.64 KB 0644
lib_formwizard.html File 5.38 KB 0644
lib_gimmicks.html File 7.76 KB 0644
lib_importwiz.html File 7.59 KB 0644
lib_schedule.html File 5.47 KB 0644
lib_script.html File 5.91 KB 0644
lib_template.html File 5.37 KB 0644
lib_tools.html File 74.88 KB 0644
lib_wikieditor.html File 5.62 KB 0644
sf_array.html File 84.5 KB 0644
sf_base.html File 45.49 KB 0644
sf_basic.html File 78.88 KB 0644
sf_calc.html File 209.75 KB 0644
sf_chart.html File 35.85 KB 0644
sf_database.html File 66.35 KB 0644
sf_dataset.html File 59.17 KB 0644
sf_datasheet.html File 42.59 KB 0644
sf_dialog.html File 164.91 KB 0644
sf_dialogcontrol.html File 92.57 KB 0644
sf_dictionary.html File 42.93 KB 0644
sf_document.html File 87.26 KB 0644
sf_exception.html File 47.22 KB 0644
sf_filesystem.html File 106.92 KB 0644
sf_form.html File 68.52 KB 0644
sf_formcontrol.html File 71.36 KB 0644
sf_formdocument.html File 24.99 KB 0644
sf_intro.html File 28.11 KB 0644
sf_l10n.html File 41.17 KB 0644
sf_menu.html File 36.53 KB 0644
sf_methods.html File 15.38 KB 0644
sf_platform.html File 32.07 KB 0644
sf_popupmenu.html File 32.73 KB 0644
sf_region.html File 48.56 KB 0644
sf_services.html File 13.42 KB 0644
sf_session.html File 58.96 KB 0644
sf_string.html File 125.2 KB 0644
sf_textstream.html File 28.87 KB 0644
sf_timer.html File 23.87 KB 0644
sf_toc.html File 136.53 KB 0644
sf_toolbar.html File 20.46 KB 0644
sf_toolbarbutton.html File 25.53 KB 0644
sf_ui.html File 63.35 KB 0644
sf_unittest.html File 62.35 KB 0644
sf_writer.html File 24.55 KB 0644
Filemanager