O estabelecimento ASAMPLE 

Conteúdo

Este documento apresenta o estabelecimento XTEND ASAMPLE que é o estabelecimeto por defeito entregue com XTEND e que contém a definição XTEND standards assim que um projeto construido com o software de criação web DreamWeaver.

Este projeto contém as páginas de exemplo (acolho, a propósito, login, contacto, erro...) para ajudar o programador XTEND a arrancar um projeto.

O projeto HTML

Os ficheiros

O estabelecimento HTML ASAMPLE está baseado sobre um modelo (Template) Dreamweaver.

EStrutura das páginas

O modelo de página ("Templates\ASAMPLE.dwt") propõe um corte via a utilização das "zonas editáveis" e "livrarias.lbi" em um conteúdo principal e dos elementos comuns a todas as páginas :

  • o nome da empresa ao alto à esquerda
  • uma zona de afixagem das mensagens ao alto à direita
  • um menu esquerdo
  • um menu baixo
  • uma folha de estilo
  • 2 funções JavaScript para fatorizar os tratamentos
      • ao carregamento da página (xBodyOnLoad)
      • sobre um clique rato sobre uma ligação dinâmica (xtdDoMyDlk)
Zonas editáveis

O modelo proposto do corte em "zonas editáveis" seguinte

  • O título da página (doctitle)
  • O cabeçalho HTML (cabeça)
  • O conteúdo antes o tag FORM (beforeForm)
  • O conteúdo principal (Conteúdo)
  • O conteúdo após o tag FORM (aterForm)
Librarias

Um modelo de página "Template\ASAMPLE.dwt" composto de livrarias seguintes :

  • Uma célula TopLeft.lbi que contém o nome de empresa
  • Uma célula TopRight.lbi que contém a data do dia e as mensagens utilizadores (Token aMsgUser)
  • Um menu baixo (BottomMenu.lbi)
  • Um menu esquerdo (LeftMenu.lbi)

A livraria "pagination.lbi" está utilizada para gerar a paginação nos quadros XTEND.

Elementos gráficos

Os elementos gráficos seguintes :

  • uma folha de estilo my.css.
  • Um conjunto de imagens no diretório IMG\
  • As imagens das bandeiras dos países "FLAGS\utilizadas na página "lista dos países"
Páginas HTML

Limites html de apresentação seguintes :

  • home.html
  • about.html
  • account.html
  • contact.html
  • countries.html
  • login.html

páginas html técnicas seguintes :

  • notavail.html
  • reconnection.html
  • error.html
Ficheiro 

GESAY_SAMPLE_SITE_PROJ.jpg

Acondicionamento

O projeto HTML ASAMPLE está guardado sobre o servidor X3 principal no diretório X3_PUB/X3FOLDER/X_TEND/X_HTML/ASAMPLE/FRA em francês e ../ENG em inglês.

X3_PUB
Diretório de publicação de todos os dossiers da solução corrente.

X3FOLDER
Nome do dossier X3 corrente

Se os ficheiros do estabelecimento ASAMPLE não estão presentes neste diretório é que XTEND não está disponível para o dossier X3 corrente.

Apenas unix verifica que todos os ficheiros do projeto HTML têm os direitos de acesso seguintes:

  • "Read" para todos
  • "Read/Write/execute" para os programadores XTEND

Fazer uma cóia em local

Nós aconselhamos de nunca modificar o estabelecimento ASAMPLE mas de fazer cópia de trabalho em modificando o nome do estabelecimento

Telecaregar o conteúdo do estaeblecimento em local via cliente FTP tipo FileZilla.

Se sedeja realizar um novo estabelecimento a partir deste modelo você deve previamente instalar DreamWeaver. Criar em seguida um novo estabelecimeto sobre o diretório telecarregado em local

Por contra se não tem "DreamWeaver" e deseja efetuar os testes você pode modificar as páginas HTML com um editor de texto tipo "NotePad++" ou PSPad e efectuar a atualização distante (sobre o servidor X3) via o cliente FTP. Neste caso pode suprimir os diretórios "Library" e "Templates".

Gestão do conteudo

O conteúdo das páginas não está guardado na página HTML, msas na base de dados X3 acessível via a função XTEND Conteúdo Html.

O objetivo é de mostrar como é possível de gerar o conteúdo HTML do estabelecimto em X3.

Este método não é ótimo do ponto de vista dos tempos de respostas porque a chamada do web services de leitura do conteúdo HTML (CLOB) está menos performante que a afixação direta de uma página HTML pelo servidor HTTP.

Na prática trata-se de encontrar um compromissso entre performance que depende de numerosos fatores (infraestrutura rede/máquinas, tamanho dos docuemtos, carga do servidor X3...) e a facilidade de administração do estabelecimento XTEND.

Tecnicamente o conteúdo está afixado por um campo (TEXTO) cujo valor está fornecido por um bloco (ABLKDOCHTML).

Este bloco seleciona o conteúdo HTML da página em função do nome de página Web (campo DOCCOD) via a chmada de uma interface (ADOCHTML) que é de tipo "Acesso gerado tabela".

Lista das páginas

Páginas de conteúdo

home
Página de acolho (Nome = AHOME)

à cerca
Página "A propósito" (Nome=AABOUT)

contato
Página de registo de um formulário HTML e registo em X3 (Alias=ACONTACT)

login
Página de login XTEND (Nome=ALOGIN)

conta
Página de afixação das informações utilizadores após login (Nom=AACCOUNT)

países
Página de exemplo de um "Acesso dados" e de uma ligação lista/detalhe que afixa a lista (paginada) dos países (tabela TABCOUNTRY) e permite seleccioanr um país para afixar as informações (detalhe) sobre a divisa e a língua (Nome=ACOUNTRIES)

Páginas técnicas

As páginas seguintes são páginas técnicas definidas ao nível de estabelecimento XTEND.

erro
Afixado quando um erro grave (Excepção) se produz (Nome=AERROR)

notavail
Afixa quando o estebeleicmento não está disponível (Nome=ANOTAVAIL)

reconexão
Afixado quando o utilizador reencontra a sua sessão após fecho do seu navegador (Nome=ARECONNECTION)

Observação :

O estabelecimento funciona para a língua ENG. Todas as páginas não estão disponíveis nesta língua.

Ligação SAFE X3

Este parágrafo apresenta a lista dos interfaces e web services utilizados pelo estabelecimeto ASAMPLE e indica como os ativar no momento de colcação em obra do XTEND.

Criação do pool de web services

Os web services não podem funcionar que após ter definido uma pool web service XTEND por defeito.

Validar o pool após criação para que sejam tomados em conta pelo servidor XTEND.

Operações a efetuar via a consola X3

O dossier X3 corrente deve ser publicado sobre um servidor X3WEB via a consola X3 e você deve encontrar sobre este dossier na lista das "Pools de web services" acessível via a função X3 GESAYS(Menu Utilitários/Pools de Web services).

Se a lista esté vazia ou não contém o seu dossier X3 o que :

  • o dossier X3 não foi publicado sobre um servidor X3WEB
  • nenhuma pool de conexão foi definida para este dossier X3 na configuração do servidor de web service.

Estas 2 operações devem ser efectuadas via a consola X3.

Definição do pool de web service XTEND

Esta operação consiste em definir um pool de conexões por defeito que será o "ponto de entrada" (URL) de todas as chamadas de web services utilizadas pelo estabelecimento ASAMPLE.

Ir à Pool de web services.

Se a pool de nome 'ADEFAULT' está presente na lista, modificar as informações

  • "Pool X3" para que aponta o seu servidor de web services e sobre o bom pool de conexões
  • "Utilizador" com as informações de login X3 válidas

Se a pool não existe, se referir ao docuemnto pool web service XTEND para o criar com o nome 'ADEFAULT'.

As interfaces

Este parágrafo apresenta as operações a efetuar para ativar as interfaces utilizadas pelo estaebelecimento ASAMPLE.

O estabelecimento ASAMPLE utiliza 3 interfaces seguintes que são acessíveis via a função interface(GESAYI).

Código

Tipo  

Parâmetros  

Nome de publicação

Descrição

ADOCHTML  

Acesso gerado tabela

Table AYTDOC  

AXTDHTML 

Acesso ao conteúdo HTML das páginas XTEND

AXTDLOGIN  

Ação sub-programa

Tratamento AYTXTLOGIN  

AXTDLOGIN  

Login dos utilizadores XTEND

AXTDFORM  

Ação objeto

Objeto AYZ  

AXTDAYZ  

Formulários HTML XTEND (utilizado para os contactos)

ACOUNTRY  

Acesso gerado tabela

Tabela TABCOUNTRY  

ACOUNTRY  

Acesso à tabela dos países

ACURRENCIES  

Acesso gerado tabela

Table TABCUR  

TABCUR

Acesso ao detalhe de uma divisa

ALANGUAGES  

Acesso gerado tabela

Table TABLAN  

TABLAN  

Acesso ao detalhe de uma língua

Parâmetros comuns a todas as fichas interfaces

Pool por defeito:Sim

Acesso protegidoNão

Afixação das mensagens:Assinalar informação, advertência, erro

Interface ADOCHTML

1. Abrir a ficha interface ADOCHTML

2. Verificar os parâmetros seguintes e os modificar se não estão corretos
Tipo : Acesso gera tabela
Código tabela:AYTDOC
Nome da publicação:AXTDHTML

3. Gerar o acesso em clicando sobre o botão "Gerar o acesso"
Os elememtos seguintes são criados automaticamente : tratamento WTAXTDHTML, a ficha sub-programa WTAXTDHTML/ACCTAB e o web service AXTDHTML
1. Verificar que os parâmetros seguintes e os modificar se não estão correctos
Nº máximo de linhas:10
Qaudro dos campos:

Código

Grupo

Dimensão

CAT

RES 

10

CREDAT

RES 

10

DES

RES 

10

DOCCOD

RES 

10

LAN

RES 

10

TEXTO

RES 

10


       2. Clicar sobre OK
       3. Veriifcar que nenhum erro se produziu (texto vermelho no rasto)
       4. Fechar o rasto

4. Registar e validar a ficha

interface AXTDFORM

1. Abrir a ficha interface AXTDFORM

2. Verificar os parâmetros seguintes e os modificar se não estão corretos
Tipo : Ação utilizador objeto
Objeto:AYZ
Nome da publicação:AXTDAYZ

3. Gerar o acesso em clicando sobre o botão "Gerar o acesso"
Os elememtos seguintes são criados automaticamente : tratamento WJAXTDAYZ e o web service AXTDAYZ
1. Verificar os parâmetros seguintes e os modificar se não estão correctos
Quadro dos campos:

Código

Grupo

Dimensão

 FRMCOD

AYZ1_1

 1

 FCYCOD

AYZ1_1

 1

Estatuto :

AYZ1_1

 1

 TTL

AYZ1_2 

 1

 MAICOD

AYZ1_2 

 1

CREDAT

AYZ1_2 

 1

 CREHEURE

AYZ1_2 

 1

 CMT

 AYZ1_4

 1

 PCT

 AYZ1_5

 1

 PARNBR

 AYZ1_3

 1

 PARCOD

 AYZ1_3

 40

 PARVAL

 AYZ1_3

 40


       2. Clicar sobre OK
       3. Verificar que nenhum erro se produziu (texto vermelho no rasto)
       4. Fechar o rasto

4. Registar e validar a ficha

Interface AXTDLOGIN

1. Abrir a ficha interface AXTDLOGIN

2. Verificar os parâmetros seguintes e os modificar se não estão correctos
  Tipo:"Ação utilizador sub-programa"
  Tratamento:AYTXTLOGIN
  Sub-programa:ACTION
  Ficha sub-programa ( por túnel sobre o campo tratamento) : AYTXTLOGIN/ACTION

3. Gerar o acesso em clicando sobre o botão "Gerar o acesso"
Os elementos seguintes são criados automaticamente : o web service AXTDLOGIN
       1. Verificar os parâmetros seguintes e os modificar se não estão corretos
           Quadro dos campos:

Código

Grupo

Dimensão

AXPARCOD

AX_PAR

 20

AXPARVAL

AX_PAR

 20

AXUSERCODE

AXLOG_PAR

 1

AXPWD

AXLOG_PAR

 1

AXUSERPROF

AXLOG_PAR

 1

AX3SOL

 X3LOG

 10

AX3FLDR

 X3LOG

 10

AX3LANG

 X3LOG

 10

AX3USER

 X3LOG

 10

AX3PWD

 X3LOG

 10

 AXLOGCOD

AXLOG_RES

 50

 AXLOGVAL

AXLOG_RES

 50

 SHIPADR1

 X3LOG

 10

 SHIPADR2

 X3LOG

 10

SHIPCITY

 X3LOG

 10

SHIPZIP

 X3LOG

 10


       2. Clicar sobre OK
       3. Verificar que nenhum erro se produziu (texto vermelho no rasto)
       4. Fechar o rasto

4. Registar e validar a ficha

Interfaces ACOUNTRY/ACURRENCIES/ALANGUAGES

Procedimento idêntico ao interface ADOCHTML com as tabelas TABCOUNTRY, TABCUR, TABLAN.

O JavaScript

A utilização do JavaScript no estabeleciento ASAMPLE se limita :

  • ao controlo de certos dados registados
  • à gestão de afixação das mensagens

No nosso exemplo nós propomos a um certo número de pontos de entrada standards que são programados no ficheiors modelo DreamWeaver (ASAMPLE.dwt) e acessíveis a todas as páginas baseadas sobre este modelo.

Livraria XTEND

O código JavaScript específico a XTEND está inserida na página HTML via o token "ALIBJS". Este token insere :

  • a livraria prototype.js
  • as livrarias JavaScript XTEND
  • uma folha de estilo XTEND

<script  adx="ALIBJS"></script>

Carregamento da página HTML

// onLoad event handler for all pages
function xBodyOnLoad()
{
   // Set '0' value for unselected checkboxes
   xtdSetUnSelelectedValue('0');
   // pageBodyOnLoad is the page onLoad handler
   if (typeof(pageBodyOnLoad)=="function")
       pageBodyOnLoad();
   }
}

pageBodyOnLoad

Este ponto de entrada permite efetuar os tratamentos específicos à página HTML sobre o evento '<BODY onLoad>' da página.

Para ativar este ponto de entrada é suficiente declarar uma função JavaScript "função pageBodyOnLoad(){}' na pagina HTML

Tratamentos sobre clique sobre uma ligação dinâmica.

Esta função permite apagar a emsagem utilizador e de chamar o ponto de entrada de controlo dos cliques sobre uma ligação dinâmica.

// Called each time the user clicks on an XTEND link
function xtdDoMyDlk(aDomOut)
{       
   // Clear user messages
   xtdRemoveElmtId("xtdusermsg",true);
   var wContinue=true;
   // Call page handler pageDoMyDlk if any
   if (typeof(pageDoMyDlk)=="function") wContinue=pageDoMyDlk(aDomOut);
   return wContinue;
}

pageDoMyDlk

Este ponto de entrada permite efetuar os tratamentos específicos à página HTML sobre clique sobre uma ligação dinâmica.

Para ativar este ponto de entrada é suficiente declarar uma função JavaScript 'function pageDoMyDlk(){aDomOut}' na pagina HTML

//Asks user to confirm creation of a new form if user clicks on ADLKCONTACTNEW dynamic link
function pageDoMyDlk(aDomOut)
{
    if (aDomOut.isDlk("ADLKCONTACTNEW"))
        return confirm('Confirmar a criação do formulário\nConfirm criação');
    devolve verdade;
}