Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Índice
outlinetrue
exclude.*ndice
stylenone


Objetivo

...

O objetivo desta página deste guia é descrever o desenvolvimento de formulários no fluig, abordando conteúdos como a configuração de máscaras dos campos, utilização de campos combo e zoom, utilização de serviços de dados e utilização de regras de formulário.

...

A utilização dessas pode impactar em algumas funcionalidades da definição de formulário ou do Workflow na utilização do navegador Microsoft® Internet Explorer ®Microsoft® Internet Explorer®.


Atenção
Nota
titleAtenção
title


  • Para visualizar todos os eventos de formulários disponíveis clique aqui.
Nota
  • Salientamos que as API's já existentes na plataforma só poderão ser utilizadas e terão o funcionamento esperado em formulários construídos a partir da antiga técnica de construção de formulários.
Nota
titleAtenção
  • Para visualizar todas as variáveis globais e suas respectivas especificações, acesse aqui.




 
FormController

 

...

O formController é o objeto que realiza a comunicação entre o formulário e a customização dos eventos. Esse objeto está disponível em cada um dos eventos de customização de
formulários através da variável form. A variável permite alterar os valores dos campos de um registro de formulário e também obter o estado de edição deles, por exemplo: se o
usuário está visualizando ou editando o registro de formulário. Veja  
Veja a seguir os métodos disponíveis para a variável form:

...

Nota
titleAtenção!

Para o correto funcionamento do formulário no fluig, todos os campos de formulário devem estar dentro da tag <form> no HTML principal ou identificar o formulário para cada campo, conforme padrão HTML. O fluig utiliza internamente todos os campos de formulário que possuem a propriedade "name" para armazenamento das informações.

Para formulários que armazenam dados em tabelas do banco de dados, existe a limitação de 1000 campos. Além disso, cada campo poderá ter no máximo 30 caracteres (formulários que continham campos maiores do que 30 caracteres, já exportados para o fluig através da Atualização 1.4.11 ou anteriores, continuam sendo exportados, mas esta validação será aplicada para os novos campos).

Quando o formulário é armazenado em tabelas do banco de dados, existem alguns termos que não podem ser utilizados no atributo "name", pois são palavras reservadas de alguns sistemas de banco de dados. Abaixo é apresentada uma lista de termos reservados:

Expandir

"ABSOLUTE", "ACCESS", "ACCESSIBLE", "ACCOUNT", "ACTION", "ACTIVATE", "ADD",
"ADMIN", "ADVISE", "AFTER", "AGGREGATE", "ALIAS", "ALL", "ALLOCATE", "ALL_ROWS", "ALTER", "ANALYZE", "AND",
"ANY", "ARCHIVE", "ARCHIVELOG", "ARE", "ARRAY", "AS", "ASC", "ASENSITIVE", "ASSERTION", "AT", "AUDIT",
"AUTHENTICATED", "AUTHORIZATION", "AUTOEXTEND", "AUTOMATIC", "BACKUP", "BECOME", "BEFORE", "BEGIN",
"BETWEEN", "BFILE", "BIGINT", "BINARY", "BIT", "BITMAP", "BLOB", "BLOCK", "BODY", "BOOLEAN", "BOTH",
"BREADTH", "BREAK", "BROWSE", "BULK", "BY", "CACHE", "CACHE_INSTANCES", "CALL", "CANCEL", "CASCADE",
"CASCADED", "CASE", "CAST", "CATALOG", "CFILE", "CHAINED", "CHANGE", "CHAR", "CHARACTER", "CHAR_CS",
"CHECK", "CHECKPOINT", "CHOOSE", "CHUNK", "CLASS", "CLEAR", "CLOB", "CLOSE", "CLOSE_CACHED_OPEN_CURSORS",
"CLUSTER", "CLUSTERED", "COALESCE", "COLLATE", "COLLATION", "COLUMN", "COLUMNS", "COMMENT", "COMMIT",
"COMMITTED", "COMPATIBILITY", "COMPILE", "COMPLETE", "COMPLETION", "COMPOSITE_LIMIT", "COMPRESS",
"COMPUTE", "CONDITION", "CONNECT", "CONNECTION", "CONNECT_TIME", "CONSTRAINT", "CONSTRAINTS",
"CONSTRUCTOR", "CONTAINS", "CONTAINSTABLE", "CONTENTS", "CONTINUE", "CONTROLFILE", "CONVERT",
"CORRESPONDING", "COST", "CPU_PER_CALL", "CPU_PER_SESSION", "CREATE", "CROSS", "CUBE", "CURRENT",
"CURRENT_DATE", "CURRENT_PATH", "CURRENT_ROLE", "CURRENT_SCHEMA", "CURRENT_TIME", "CURRENT_TIMESTAMP",
"CURRENT_USER", "CURSOR", "CYCLE", "DANGLING", "DATA", "DATABASE", "DATABASES", "DATAFILE", "DATAFILES",
"DATAOBJNO", "DATE", "DAY", "DAY_HOUR", "DAY_MICROSECOND", "DAY_MINUTE", "DAY_SECOND", "DBA", "DBCC",
"DBHIGH", "DBLOW", "DBMAC", "DEALLOCATE", "DEBUG", "DEC", "DECIMAL", "DECLARE", "DEFAULT", "DEFERRABLE",
"DEFERRED", "DEGREE", "DELAYED", "DELETE", "DENY", "DEPTH", "DEREF", "DESC", "DESCRIBE", "DESCRIPTOR",
"DESTROY", "DESTRUCTOR", "DETERMINISTIC", "DIAGNOSTICS", "DICTIONARY", "DIRECTORY", "DISABLE",
"DISCONNECT", "DISK", "DISMOUNT", "DISTINCT", "DISTINCTROW", "DISTRIBUTED", "DIV", "DML", "DOMAIN",
"DOUBLE", "DROP", "DUAL", "DUMMY", "DUMP", "DYNAMIC", "EACH", "ELSE", "ELSEIF", "ENABLE", "ENCLOSED",
"END", "END-EXEC", "ENFORCE", "ENTRY", "EQUALS", "ERRLVL", "ESCAPE", "ESCAPED", "EVERY", "EXCEPT",
"EXCEPTION", "EXCEPTIONS", "EXCHANGE", "EXCLUDING", "EXCLUSIVE", "EXEC", "EXECUTE", "EXISTS", "EXIT",
"EXPIRE", "EXPLAIN", "EXTENT", "EXTENTS", "EXTERNAL", "EXTERNALLY", "FAILED_LOGIN_ATTEMPTS", "FALSE",
"FAST", "FETCH", "FILE", "FILLFACTOR", "FIRST", "FIRST_ROWS", "FLAGGER", "FLOAT", "FLOAT4", "FLOAT8",
"FLOB", "FLUSH", "FOR", "FORCE", "FOREIGN", "FOUND", "FREE", "FREELIST", "FREELISTS", "FREETEXT",
"FREETEXTTABLE", "FROM", "FULL", "FULLTEXT", "FUNCTION", "GENERAL", "GET", "GLOBAL", "GLOBALLY",
"GLOBAL_NAME", "GO", "GOTO", "GRANT", "GROUP", "GROUPING", "GROUPS", "HASH", "HASHKEYS", "HAVING",
"HEADER", "HEAP", "HIGH_PRIORITY", "HOLDLOCK", "HOST", "HOUR", "HOUR_MICROSECOND", "HOUR_MINUTE",
"HOUR_SECOND", "ID", "IDENTIFIED", "IDENTITY", "IDENTITYCOL", "IDENTITY_INSERT", "IDGENERATORS",
"IDLE_TIME", "IF", "IGNORE", "IGNORE_SERVER_IDS", "IMMEDIATE", "IN", "INCLUDING", "INCREMENT", "INDEX",
"INDEXED", "INDEXES", "INDICATOR", "IND_PARTITION", "INFILE", "INITIAL", "INITIALIZE", "INITIALLY",
"INITRANS", "INNER", "INOUT", "INPUT", "INSENSITIVE", "INSERT", "INSTANCE", "INSTANCES", "INSTEAD", "INT",
"INT1", "INT2", "INT3", "INT4", "INT8", "INTEGER", "INTERMEDIATE", "INTERSECT", "INTERVAL", "INTO", "IS",
"ISOLATION", "ISOLATION_LEVEL", "ITERATE", "JOIN", "KEEP", "KEY", "KEYS", "KILL", "LABEL", "LANGUAGE",
"LARGE", "LAST", "LATERAL", "LAYER", "LEADING", "LEAVE", "LEFT", "LESS", "LEVEL", "LIBRARY", "LIKE",
"LIMIT", "LINEAR", "LINENO", "LINES", "LINK", "LIST", "LOAD", "LOB", "LOCAL", "LOCALTIME",
"LOCALTIMESTAMP", "LOCATOR", "LOCK", "LOCKED", "LOG", "LOGFILE", "LOGGING", "LOGICAL_READS_PER_CALL",
"LOGICAL_READS_PER_SESSION", "LONG", "LONGBLOB", "LONGTEXT", "LOOP", "LOW_PRIORITY", "MANAGE", "MAP",
"MASTER", "MASTER_HEARTBEAT_PERIOD", "MASTER_SSL_VERIFY_SERVER_CERT", "MATCH", "MAX", "MAXARCHLOGS",
"MAXDATAFILES", "MAXEXTENTS", "MAXINSTANCES", "MAXLOGFILES", "MAXLOGHISTORY", "MAXLOGMEMBERS", "MAXSIZE",
"MAXTRANS", "MAXVALUE", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MEMBER", "MIDDLEINT", "MIN",
"MINEXTENTS", "MINIMUM", "MINUS", "MINUTE", "MINUTE_MICROSECOND", "MINUTE_SECOND", "MINVALUE", "MLSLABEL",
"MLS_LABEL_FORMAT", "MOD", "MODE", "MODIFIES", "MODIFY", "MODULE", "MONTH", "MOUNT", "MOVE",
"MTS_DISPATCHERS", "MULTISET", "NAMES", "NATIONAL", "NATURAL", "NCHAR", "NCHAR_CS", "NCLOB", "NEEDED",
"NESTED", "NETWORK", "NEW", "NEXT", "NO", "NOARCHIVELOG", "NOAUDIT", "NOCACHE", "NOCHECK", "NOCOMPRESS",
"NOCYCLE", "NOFORCE", "NOLOGGING", "NOMAXVALUE", "NOMINVALUE", "NONCLUSTERED", "NONE", "NOORDER",
"NOOVERRIDE", "NOPARALLEL", "NOREVERSE", "NORMAL", "NOSORT", "NOT", "NOTHING", "NOWAIT",
"NO_WRITE_TO_BINLOG", "NULL", "NULLIF", "NUMBER", "NUMERIC", "NVARCHAR2", "OBJECT", "OBJNO", "OBJNO_REUSE",
"OF", "OFF", "OFFLINE", "OFFSETS", "OID", "OIDINDEX", "OLD", "ON", "ONLINE", "ONLY", "OPCODE", "OPEN",
"OPENDATASOURCE", "OPENQUERY", "OPENROWSET", "OPENXML", "OPERATION", "OPTIMAL", "OPTIMIZE",
"OPTIMIZER_GOAL", "OPTION", "OPTIONALLY", "OR", "ORDER", "ORDINALITY", "ORGANIZATION", "OSLABEL", "OUT",
"OUTER", "OUTFILE", "OUTPUT", "OVER", "OVERFLOW", "OWN", "PACKAGE", "PAD", "PARALLEL", "PARAMETER",
"PARAMETERS", "PARTIAL", "PARTITION", "PASSWORD", "PASSWORD_GRACE_TIME", "PASSWORD_LIFE_TIME",
"PASSWORD_LOCK_TIME", "PASSWORD_REUSE_MAX", "PASSWORD_REUSE_TIME", "PASSWORD_VERIFY_FUNCTION", "PATH",
"PCTFREE", "PCTINCREASE", "PCTTHRESHOLD", "PCTUSED", "PCTVERSION", "PERCENT", "PERMANENT", "PLAN",
"PLSQL_DEBUG", "POSTFIX", "POST_TRANSACTION", "PRECISION", "PREFIX", "PREORDER", "PREPARE", "PRESERVE",
"PRIMARY", "PRINT", "PRIOR", "PRIVATE", "PRIVATE_SGA", "PRIVILEGE", "PRIVILEGES", "PROC", "PROCEDURE",
"PROFILE", "PUBLIC", "PURGE", "QUEUE", "QUOTA", "RAISERROR", "RANGE", "RAW", "RBA", "READ", "READS",
"READTEXT", "READUP", "READ_WRITE", "REAL", "REBUILD", "RECONFIGURE", "RECOVER", "RECOVERABLE", "RECOVERY",
"RECURSIVE", "REF", "REFERENCES", "REFERENCING", "REFRESH", "REGEXP", "RELATIVE", "RELEASE", "RENAME",
"REPEAT", "REPLACE", "REPLICATION", "REQUIRE", "RESET", "RESETLOGS", "RESIGNAL", "RESIZE", "RESOURCE",
"RESTORE", "RESTRICT", "RESTRICTED", "RESULT", "RETURN", "RETURNING", "RETURNS", "REUSE", "REVERSE",
"REVOKE", "RIGHT", "RLIKE", "ROLE", "ROLES", "ROLLBACK", "ROLLUP", "ROUTINE", "ROW", "ROWCOUNT",
"ROWGUIDCOL", "ROWID", "ROWNUM", "ROWS", "RULE", "SAMPLE", "SAVE", "SAVEPOINT", "SB4", "SCAN_INSTANCES",
"SCHEMA", "SCHEMAS", "SCN", "SCOPE", "SCROLL", "SD_ALL", "SD_INHIBIT", "SD_SHOW", "SEARCH", "SECOND",
"SECOND_MICROSECOND", "SECTION", "SEGMENT", "SEG_BLOCK", "SEG_FILE", "SELECT", "SENSITIVE", "SEPARATOR",
"SEQUENCE", "SERIALIZABLE", "SESSION", "SESSIONS_PER_USER", "SESSION_CACHED_CURSORS", "SESSION_USER",
"SET", "SETS", "SETUSER", "SHARE", "SHARED", "SHARED_POOL", "SHOW", "SHRINK", "SHUTDOWN", "SIGNAL", "SIZE",
"SKIP", "SKIP_UNUSABLE_INDEXES", "SLOW", "SMALLINT", "SNAPSHOT", "SOME", "SORT", "SPACE", "SPATIAL",
"SPECIFIC", "SPECIFICATION", "SPECIFICTYPE", "SPLIT", "SQL", "SQLEXCEPTION", "SQLSTATE", "SQLWARNING",
"SQL_BIG_RESULT", "SQL_CALC_FOUND_ROWS", "SQL_SMALL_RESULT", "SQL_TRACE", "SSL", "STANDBY", "START",
"STARTING", "STATE", "STATEMENT", "STATEMENT_ID", "STATIC", "STATISTICS", "STOP", "STORAGE", "STORE",
"STRAIGHT_JOIN", "STRUCTURE", "SUCCESSFUL", "SWITCH", "SYNONYM", "SYSDATE", "SYSDBA", "SYSOPER", "SYSTEM",
"SYSTEM_USER", "SYS_OP_ENFORCE_NOT_NULL$", "SYS_OP_NTCIMG$", "TABLE", "TABLES", "TABLESPACE",
"TABLESPACE_NO", "TABNO", "TEMPORARY", "TERMINATE", "TERMINATED", "TEXTSIZE", "THAN", "THE", "THEN",
"THREAD", "TIME", "TIMESTAMP", "TIMEZONE_HOUR", "TIMEZONE_MINUTE", "TINYBLOB", "TINYINT", "TINYTEXT", "TO",
"TOP", "TOPLEVEL", "TRACE", "TRACING", "TRAILING", "TRAN", "TRANSACTION", "TRANSITIONAL", "TRANSLATION",
"TREAT", "TRIGGER", "TRIGGERS", "TRUE", "TRUNCATE", "TSEQUAL", "TX", "TYPE", "UB2", "UBA", "UID",
"UNARCHIVED", "UNDER", "UNDO", "UNION", "UNIQUE", "UNKNOWN", "UNLIMITED", "UNLOCK", "UNNEST",
"UNRECOVERABLE", "UNSIGNED", "UNTIL", "UNUSABLE", "UNUSED", "UPDATABLE", "UPDATE", "UPDATETEXT", "USAGE",
"USE", "USER", "USING", "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP", "VALIDATE", "VALIDATION", "VALUE",
"VALUES", "VARBINARY", "VARCHAR", "VARCHAR2", "VARCHARACTER", "VARIABLE", "VARYING", "VIEW", "WAITFOR",
"WHEN", "WHENEVER", "WHERE", "WHILE", "WITH", "WITHOUT", "WORK", "WRITE", "WRITEDOWN", "WRITETEXT",
"WRITEUP", "XID", "XOR", "YEAR", "YEAR_MONTH", "ZEROFILL", "ZONE"


Quando houver necessidade de manipular o HTML do formulário via JavaScript - principalmente quando envolver a criação de campos de formulário - sugerimos que isso seja feito através de scripts anexos ao formulário, importados pela tag <script src="minhasfuncoes.js"></script>, e não diretamente no HTML principal. Funções como a demonstrada abaixo podem gerar conflito na publicação do formulário no fluig:

Bloco de código
languagejs
titleNão inclua este tipo de função dentro do HTML principal do formulário
function insereSelect(selectName){
 conteudo += "<select class=\"form control\" name='"+selectName+"' id='+"selectName+"'>"+
 "<option value=\"\" selected=\"selected\">SELECIONE</option>"+
 "<option value=\"APROVADO\">APROVADO</option>"+
 "<option value=\"REPROVADO\">REPROVADO</option>"+
 "</select>";
 
 $("#itemPai").append(conteudo);
}

...