01. DADOS GERAIS
Produto: | TOTVS Prestadores de Serviços Transporte de Passageiros |
Linha de Produto: | Linha Protheus |
Segmento: | Serviços |
Módulo: | SIGAGTP |
Função: | GTPU009.PRW - Programação horários/linhas |
País: | Brasil |
Ticket: | |
Requisito/Story/Issue (informe o requisito relacionado) : | DSERGTP-9802 |
02. SITUAÇÃO/REQUISITO
- Devemos realizar a criação de um novo modelo para o controle operacional dos horários e linhas, levando em consideração o protótipo desenvolvido pelo time de UX.
03. SOLUÇÃO
- Criado novo modelo MVC GTPU009, para o cadastro de programação de horários/linhas.
- Criação de tabela - SX2
Chave | Arquivo | Nome | Unico | Modo | ModoUn | ModoEmp |
H71 | H71990 | Programação de Horários/Linhas | H71_FILIAL+H71_CODIGO | C-Compartilhado | E - Exclusivo | E - Exclusivo |
H73 | H73990 | Requisitos da programação | H73_FILIAL+H73_CODIGO+H73_CODH71 | C-Compartilhado | E - Exclusivo | E - Exclusivo |
H74 | H74990 | Programação do Requisito | H74_FILIAL+H74_CODIGO+H74_CODH73+H74_NOME | C-Compartilhado | E - Exclusivo | E - Exclusivo |
H75 | H75990 | Detalhes program. do requisito | H75_FILIAL+H75_CODIGO+H75_CODH74 | C-Compartilhado | E - Exclusivo | E - Exclusivo |
- Criação de índice - SIX
Indice | Ordem | Chave | Descrição |
H71 | 1 | H71_FILIAL+H71_CODIGO | Codigo |
H71 | 2 | H71_FILIAL+H71_CODH6V+H71_STATUS | Codigo H6V+Status Progr |
H73 | 1 | H73_FILIAL+H73_CODIGO+H73_CODH71 | Codigo Requi+Cod programa |
H74 | 1 | H74_FILIAL+H74_CODIGO+H74_CODH73+H74_NOME | Req x Detalh+Codigo+Req x Detalh |
H75 | 1 | H75_FILIAL+H75_CODIGO+H75_CODH74 | Codigo+Req x Detalh |
- Criação de campos - SX3:
Tabela H71
Arquivo
Campo
Ordem
Tipo
Tamanho
Título
Descrição
Picture
Valid
Relação
F3
CBOX
OBRIGATORIO
Exibe Browse
Visual
Contexto
H71
H71_FILIAL
01
C
2
Filial
Filial do Sistema
@!
X
A
R
H71
H71_CODIGO
02
C
6
Codigo
Codigo da Secao
ExistChav("H71",M->H71_CODIGO,1)
GETSXENUM("H71","H71_CODIGO")
X
X
V
R
H71
H71_DTFINA
03
D
8
Inicio Progr
Data inicio programacao
X
X
A
R
H71
H71_DTINIC
04
D
8
Termino Prog
Data Termino Programacao
X
A
R
H71
H71_STATUS
05
C
1
Status
Status
Pertence("12")
"1"
1=Ativo;2=Inativo
X
X
A
R
H71
H71_CODH6V
06
C
6
Codigo H6V
Codigo H6V
Vazio() .OR. ExistCpo("H6V")
H6V
X
X
A
R
H71
H71_PREFIX
07
C
10
Prefixo Linh
Prefixo Linha
V
R
H71
H71_CODLIN
08
C
4
Cod. Linha
Codigo Linha
V
R
H71
H71_DESLIN
09
C
60
Desc Linha
Descrição Linha
V
R
H71
H71_ORIGEM
10
C
50
Origem Linha
Origem Linha
V
R
H71
H71_DESTIN
11
C
60
Destino Linh
Destino Linha
V
R
H71
H71_TARIFA
12
C
60
Tarifa Linha
Tarifa Linha
V
R
H71
H71_PEDAGI
13
C
60
Pedagio Linh
Pedagio Linha
V
R
H71
H71_CATEGO
14
C
50
Categ. Linha
Categoria Linha
V
R
Tabela H73
Arquivo
Campo
Ordem
Tipo
Tamanho
Título
Descrição
Picture
Valid
Relação
F3
CBOX
OBRIGATORIO
Exibe Browse
Visual
Contexto
H73
H73_FILIAL
01
C
2
Filial
Filial do Sistema
@!
A
R
H73
H73_CODIGO
02
C
6
Codigo Requi
Codigo Requisito
ExistChav("H73",M->H73_CODIGO,1)
GETSXENUM("H73","H73_CODIGO")
X
V
R
H73
H73_CODH71
03
C
6
Cod programa
Codigo programação
V
R
H73
H73_HRINI
04
C
5
Horario Ini
Horario Inicio
@9 99:99
AtVldHora(M->H73_HRINI)
X
A
R
H73
H73_HRPART
05
C
5
Horario Part
Horario Partida
@9 99:99
AtVldHora(M->H73_HRPART)
X
A
R
H73
H73_HRCHEG
06
C
5
Horario Cheg
Horario Chegada
@9 99:99
AtVldHora(M->H73_HRCHEG)
X
A
R
H73
H73_HRTERM
07
C
5
Horario Term
Horario Termino
@9 99:99
AtVldHora(M->H73_HRTERM)
X
A
R
H73
H73_KMINPA
08
N
10,2
KM ini x Par
KM inicio x Partida
@E 9,999,999.99
Positivo()
X
A
R
H73
H73_KMCHTE
09
N
10,2
KM cheg x Te
KM chegada x Termino
@E 9,999,999.99
Positivo()
X
A
R
H73
H73_SEGUND
10
L
1
Segunda
Segunda
A
R
H73
H73_TERCA
11
L
1
Terca
Terca
A
R
H73
H73_QUARTA
12
L
1
Quarta
Quarta
A
R
H73
H73_QUINTA
13
L
1
Quinta
Quinta
A
R
H73
H73_SEXTA
14
L
1
Sexta
Sexta
A
R
H73
H73_SABADO
15
L
1
Sabado
Sabado
A
R
H73
H73_DOMING
16
L
1
Domingo
Domingo
A
R
H73
H73_FERIAD
17
L
1
Feriado
Feriado
A
R
Tabela H74
Arquivo
Campo
Ordem
Tipo
Tamanho
Título
Descrição
Picture
Valid
Relação
F3
CBOX
OBRIGATORIO
Exibe Browse
Visual
Contexto
H74
H74_FILIAL
01
C
2
Filial
Filial do Sistema
@!
A
R
H74
H74_CODIGO
02
C
6
Codigo
Codigo da Secao
ExistChav("H74",M->H74_CODIGO,1)
GETSXENUM("H74","H74_CODIGO")
X
V
R
H74
H74_CODH73
03
C
6
Cod. Requisi
Cod. Requisito
V
R
H74
H74_NOME
04
C
30
Nome Program
Nome Program
X
A
R
Tabela H75
Arquivo
Campo
Ordem
Tipo
Tamanho
Título
Descrição
Picture
Valid
Relação
F3
CBOX
OBRIGATORIO
Exibe Browse
Visual
Contexto
H75
H75_FILIAL
01
C
2
Filial
Filial do Sistema
@!
A
R
H75
H75_CODIGO
02
C
6
Codigo
Codigo da Secao
ExistChav("H75",M->H75_CODIGO,1)
GETSXENUM("H75","H75_CODIGO")
X
V
R
H75
H75_CODH74
03
C
6
Cod. Linha
Codigo da Linha
V
R
H75
H75_SENTID
04
C
1
Desc. Linha
Descricao da Linha
Pertence("12")
'1'
1=Ida;2=Volta
X
A
R
H75
H75_HRINIC
05
C
5
@9 99:99
AtVldHora(M->H75_HRINIC)
X
A
R
H75
H75_HRFINA
06
C
5
@9 99:99
AtVldHora(M->H75_HRFINA)
X
A
R
H75
H75_KM
07
N
10,2
@E 9,999,999.99
Positivo()
X
A
R
H75
H75_TEMPOV
08
C
5
@9 99:99
AtVldHora(M->H75_TEMPOV)
X
A
R
- Criação de relacionamento – SX9
- Tabela H71
Dom | Expressão Dom | CDom | Expressão CDom |
H6V | H6V_CODIGO | H71 | H71_CODH6V |
Validações principais
- A data de término deve ser maior que a data de inicio.
- As datas não podem convergir com as mesmas datas programadas e ativas.
- Se a programação for inclusa sem a data de término e a data incial convergir com apenas 1 programação ativa, a mesma é inativada automaticamente.
- Se a programação for inclusa sem a data de término e a data incial convergir com mais de 1 programação ativa, é mostrada a mensagem que deve-se inativar as ativas ou informar novas datas.
- Se tentar inativar uma programação sem data final, o sistema bloqueia, para inativar,deve ter data de término.
04. DEMAIS INFORMAÇÕES
- Não há