Exemplo De Criação De Arquivos De Configuração

Last modified: March 19, 2020

Use os arquivos de configuração necessários para criar um carregador personalizado para passar dados para a sua instância Connect.

Exemplo de arquivo de configuração de tabela

Transfira ou crie o arquivo de configuração County. xml para armazenar a informação do Condado.

O exemplo de XML de arquivo pode ser usado como um modelo básico e contém assistência embutida.

Arquivo XML

XML
<?xml version="1.0" encoding="UTF-8"?>
<xforms-apps xmlns="http://semanta.cz/schema/xf3">
<!-- this is a really minimalistic example of the application, it can be used as a template for your new application -->    
<!-- start with definition of the application -->
    <xforms-app>
 
<!-- xid is the unique identifier for the application -->
        <xid>county</xid>
 
<!-- insert an icon visually representing entities of your application, use base64 code of the icon here -->
<!-- use base64 code of the icon here which can be encoded by various online services such as https://www.base64encode.org/ -->        
        <icon> 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
        </icon><!-- entry-name is a label which will be used in the application as a type for you entries -->                
        <entry-name>County</entry-name>
 
<!-- now we are going to declare the structure of the application, it's a grid structure to ensure great design potential on all platforms (desktop, mobile) -->
<!-- structure of the app is rows, columns - one or more (max 12) columns in a row, group which is a container for the fields, field stores information and can have various data types such as rich-text, plain-text, relation, date ... --><structure>
            <row>
                <column>
                    <width>9</width>
                    <group>
                        <id>stream</id>
                        <name>Description</name>
                        <fields><!-- we are using fragments which are parts of definitions we have declared once and used many times, every app has entry name, business name, description -->                                                                        
                            <!--@import fragment="entry-name" name="Term Name"-->
                            <!--@import fragment="business-name" -->
                            <!--@import fragment="description" -->
                            <field>
                                <code>entryAttachments</code>
                                <name>Attachments</name>
                                <type>
                                    <attachments>
                                        <display-as>thumbnails</display-as>
                                    </attachments>
                                </type>
                            </field>
                        </fields>
                    </group>
                    <group>
                        <id>nexus</id>
 
<!-- again generic relationship field which shows nexus tool inside the page -->                                        
                        <name>Relationships</name>
                        <fields>
                            <field>
                                <code>my_relations</code>
                                <name>Relations</name>
                                <hide-in-edit-if-loaded>true</hide-in-edit-if-loaded>
                                <type>
                                    <info>
                                        <velocity>
                                            <![CDATA[
                                            #embeddedNexus("All", $entry)
                                        ]]>
                                        </velocity>
                                    </info>
                                </type>
                            </field>
                        </fields>
                    </group></column>
            </row>
 
<!-- now we will declare which fields from above definition will be displayed on the list of entries (list of counties in this case) -->                            
            <list>
                <fieldCode>entryName</fieldCode>
                <fieldCode human-readable="Description">entryExcerpt</fieldCode>
                <fieldCode human-readable="Rating">entryLikeCount</fieldCode>
            </list>
        </structure>
    </xforms-app>
</xforms-apps>

Carregar arquivo

Carregue o arquivo de configuração concluído na sua instância do Connect.

  1. Faça login no Connect usando uma conta de administrador.
  2. Selecione seu avatar de usuário no canto superior direito e selecione Administração.
  3. Na seção upload, arraste e solte ou navegue até o arquivo de configuração: County. xml.

Como alternativa, consulte fluxo de trabalho de carregamento de arquivo de configuração para carregar arquivos com um fluxo de trabalho designer por meio da API REST.

Verifique a configuração

Verifique se o arquivo de configuração carregado é válido.

  1. Faça login no Connect.
  2. Selecione fontes de dados.
  3. Clique no sinal de mais vermelho no canto inferior direito.
  4. Digite o título "County Test" e selecione CRIAR.

  5. Em pastas, insira:

    • Tipo de entrada de pasta: County

      Cria instâncias de County na pasta.

    • Todas as entradas: "tipo: concelho"

      Defina quais entradas são exibidas na pasta, permitindo que vários tipos de entrada dos descendentes.

  6. Selecione SAVE. Uma nova pasta está agora disponível.
  7. Clique no sinal de mais vermelho no canto inferior direito.
  8. Selecione county nesta pasta.

     

     

  9. Digite o título "Orange County" e selecione CRIAR.
  10. Acesse a pasta "County Test" um nível acima. O descendente "Orange County" deve estar disponível.

     

Exemplo de arquivo de configuração de trabalho de carga

Baixe ou crie um arquivo de configuração de trabalho de carregamento, que mapeia entre a tabela de estágios e a interface Connect, permitindo que os usuários acessem os dados carregados.

O exemplo de XML de arquivo pode ser usado como um modelo básico e contém assistência embutida.

Arquivo XML

XML
<?xml version="1.0" encoding="UTF-8"?>
 
<!-- The definition of the application. -->
<loading-instructions xmlns="http://semanta.cz/schema/xf3/load">
	<loading-instruction>
 
		<!-- The  unique job identifier, called from the API. -->
		<job-id>load-alteryx-countries</job-id>
 
		<!-- every job can have sub-jobs, creating hierarchical loaded structures. In this example, we load a top level folder containing one County entry per record in the stage table. -->       
		<for-each-row>
			<sub-job-id>mainFolder</sub-job-id>
 
			<!-- The query to retrieve data from the stage table, to map to Connect's UI configuration. -->            
			<of-query>
				<sql>
					<connection-id>master</connection-id>
					<query-body>select 1</query-body>
				</sql>
			</of-query>
 
			<!-- For each row in the dataset returned from the query, an entry is created. In this example, there is only one row in the dataset, so only the top level folder entry is created.  -->
			<define-entry>
 
				<!-- The definition of the entry type. -->                                        
				<app>folder</app>
 
				<!-- The unique identifier of the parent entry, which must already exist to hold the entry being created. In this example, we use the Data Source folder ID, creating sub-folder. -->                                       
				<parent>f19f38ae-1c68-49f9-8654-288b92284bab</parent>
				<parent-field>subfolders</parent-field>
 
				<!-- The unique identifier of the entry, usually the UUID taken from the source system. In this example, we use a hash created out of string "counties". -->                                                       
				<xid>$lu.toXidEncoded("counties")</xid>
 
				<!-- The name of the entry as it is displayed in Connect's UI. -->                                                                        
				<name>Countries Example</name>
 
				<!-- Set individual fields by defining the fieldcode of the application and the associated value from the datasource. In this example, the values are hardcoded. -->
				<fields>
					<![CDATA[
						#set($foldertype="county")
						#set($entrytypelist="type:county")
						#set($platformDescription="<p>SDK Sample Countries.</p>")
						#set($displaytype="smallcard")
						#set($displaytype_readable="Small Card")
						#set($displaytypeallentries="smallcard")
						#set($displaytypeallentries_readable="Small Card")
						#set($displaytypefolder="smallcard")
						#set($displaytypefolder_readable="Small Card")
						#set($integrationcode="promoteInstances")
						#set($entriesgroupname="Promote Instances")
						#set($subfoldersgroupname="Subfolders")
						#set($allentriesgroupname="Counties")
					]]>
				</fields>
 
				<!-- do not touch fields are fields which should be editable in UI and should not be touch (overwritten) by the loading job -->
				<!-- usually description, owner are such fields -->               
				<do-not-touch>
					<!--@import fragment="common-dont-touch"-->
					<field>MainThumbnail</field>
					<field>orderbytype</field>
					<field>orderascending</field>
					<field>entryOwner</field>
				</do-not-touch>
				<for-each-row>
 
					<!-- this is the tick how to add attachment, in this case thumbnail of the folder -->                                    
					<add-attachment>
						<xid>$lu.toXidEncoded("counties-icon")</xid>
						<name>Alteryx_Counties.png</name>
						<field-code>MainIcon</field-code>
						<base64content>
							<!-- Set to an icon encoded in base64 code (https://www.base64encode.org/). The icon will be used to visually represent your application. -->
						</base64content>
					</add-attachment>
				</for-each-row>
			</define-entry>
		</for-each-row>
 
		<!-- so right now, we have created just one folder -->
		<!-- right now we are going to iterate on dataset of Counties and create a record for each County -->               
		<for-each-row>           
			<sub-job-id>countriesList</sub-job-id>
 
			<!-- get datset of Counties (from the stage table EXT_COUNTRIES) -->                
			<of-query>
				<sql>
					<connection-id>master</connection-id>
					<query-body>
						<![CDATA[
							SELECT name, key FROM EXT_COUNTRIES
						]]>
					</query-body>
				</sql>
			</of-query>
 
			<!-- and now create entry one per each row from dataset -->                            
			<define-entry>
 
				<!-- creating entry of "county" app we have defined in previous chapter -->                                
				<app>county</app>
 
				<!-- start under folder created in previous step -->                                
				<parent>$lu.toXidEncoded("counties")</parent>
				<parent-field>entries</parent-field>
 
				<!-- create uuid out of the county name -->                                
				<xid>$lu.toXidEncoded("${name}")</xid>
 
				<!-- county name -->                                                
				<name>${name}</name>
 
				<!-- set values for the entry -->
				<!-- in our case we are setting just one which is description, others are parameters for setting displaying behavior of the folder, entries, subentries and are not important for this example too much -->                           
				<fields>
					<![CDATA[
						#set($description="${key}")
						#set($foldertype="folder")
						#set($entrytypelist="folder")
						#set($platformDescription="<p>SDK Example.</p>")
						#set($displaytype="table")
						#set($displaytype_readable="Table")
						#set($displaytypeallentries="table")
						#set($displaytypeallentries_readable="Table")
						#set($displaytypefolder="smallcard")
						#set($displaytypefolder_readable="Small Card")
						#set($integrationcode="")
						#set($entriesgroupname="Promote Owners")
						#set($subfoldersgroupname="Subfolders")
						#set($allentriesgroupname="County List")
					]]>
				</fields>
				<do-not-touch>
					<!--@import fragment="common-dont-touch"-->
					<field>entryOwner</field>
				</do-not-touch>
			</define-entry>
		</for-each-row>
	</loading-instruction>
</loading-instructions>

Carregar arquivo

Carregue o arquivo de configuração concluído na sua instância do Connect.

  1. Faça login no Connect usando uma conta de administrador.
  2. Selecione seu avatar de usuário no canto superior direito e selecione Administração.
  3. Na seção upload, arraste e solte ou navegue até o arquivo de configuração: loading-alteryx-Counties. xml.

Como alternativa, consulte fluxo de trabalho de carregamento de arquivo de configuração para carregar arquivos com um fluxo de trabalho designer por meio da API REST.

Verifique a configuração

Verifique se o arquivo de configuração carregado é válido. A melhor maneira de testar isso é executar um teste de ponta a ponta executando um fluxo de trabalho que extrai metadados em tabelas de estágio e chama um trabalho de carregamento para criar entradas no Connect.

Consulte fluxo de trabalho de carregamento de dados.

Esta página foi útil?

Problemas com seu produto Alteryx? Visite a Comunidade Alteryx ou entre em contato com nossa Equipe de Suporte. Não é possível enviar este formulário? Envie-nos um e-mail.