O SC é um bom produto, mas a Curva de Aprendizado é de matar. Já trabalhei com Basic, Cobol, SuperMumps, Zim, Clipper, Linux Bash, Delphi Firebird, Python
e sempre desenvolvi Muito rápido nas ferramentas acima,
mas estou levando uma Grandiosa Surra do Scritpcase para fazer o que preciso. Estou levando com certeza 10 vezes mais tempo para aprender o SC do que qualquer outra ferramenta que já usei.
(e eu adotei o SC justamente para economizar tempo - sei que depois que aprender será mais facil, mas não esperava sofrer tanto para aprender a fazer o que preciso no SC)
Sim, já fiz uma App SC com Login, Controle de Persmissões, modulo Log, vários Forms, Ligacoes, Grids de consulta/ filtros, Dashboard e Blank apps , etc - mas quando quero fazer algo diferenciado/ Avançado, não estou achando na Documentação do Produto.
e mesmo coisas simples não funcionam como deveria, por exemplo alguns Dashboards que fiz.
Tem muito video youtube, forum , projetos Samples e alguns blogs em formato texto, mas para achar o que se quer fazer, tem que se olhar videos inteiros para tentar achar no video o que precisa, pausar o video, digitar o codigo que está no video, e ficar testando muito até conseguir.
E pior, em 90% ou mais dos casos, se quer fazer algo um pouco diferente, não tem solução nos locais acima descritos.
(poderia ter muito mais receitas de bolo em modo texto e o Manual do produto e das Macros ter MUITO mais Exemplos de Códigos)
************************* SUGESTÃO DE SOLUÇÃO: **************************************
NOS VIDEOS YOUTUBE, NA DESCRICAO DO VIDEO, COLOCAR TAGS - DESCRICAO DE VARIAS COISAS QUE SAO ABORDADAS EM CADA VIDEO, FACILITANDO DAÍ QUEM ENTRAR NO YOUTUBE E PESQUISAR SCRIPTCASE ASSUNTO
E NA DESCRICAO DO VIDEO, COLOCAR OS CODIGOS SCRIPTCASE QUE ESTAO NO VIDEO - PARA EVITAR TER QUE COPIAR/DIGITAR (Ok, Legal , alguns videos já tem o link para o projeto no google drive)
E OS MINUTOS QUE OCORREM CADA ITEM
Exemplo: no video https://www.youtube.com/watch?v=pEdd182jn2E
na descricao do video, poderia constar:
NO VIDEO ACIMA MOSTRA COMO:
-GERAR PDF PERSONALIZADO
-COMO MUDAR formato data, por exemplo pedir só mês e Ano,
-explode - datas
-exemplo de Duplo Select (delimitador é ; )
-uso de sc_link
Minuto 31:40 -sc_redir para uma aplicacao blank passando parametros de clausula where de banco de dados -
Minuto 32:03 - sc_exit
-Evento OnRecord
-como criar um botão de ação em cada registro - novo campo texto, com imagem
-como criar botão com validade para todo formulário - botao tipo PHP , target outra janela, codigo vai onde especificou o botao
-sc_select_where_add
-variaveis globais - sc_set_global
-GROUPBY - agrupando por cliente, por exemplo -…
-…
-…
-…
(ou seja , quanto mais descricao e palavras chave nos videos, melhor)
ISTO AGILIZARIA A ACHAR O QUE CADA PESSOA PRECISA. HOJE È DIFICIL ALGUEM TER TEMPO DE ASSISTIR 200 horas ou 500 horas de video para conseguir achar o que precisa.
Um dos vários itens que ainda não consegui fazer ainda:
No modulo de segurança , setei opção para que cada usuario logue 1 vez só
Porém , quero saber como desativar via codigo (sem ter que gerar de novo no modulo de segurança , pois ao gerar de novo vai mudar codigos que já escrevi)
ou entao, que eu possa fazer algo como fazer logoff de usuario xx antes de pedir o login
POR EXEMPLO, QUANDO EU ABRO O LOGIN COMO ADMIN PARA DESENVOLVER , SEMPRE DIZ QUE jÀ ESTÀ LOGADO - Me faz perder tempo.
Na tela Login, no OnapplicationInit, coloquei o codigo abaixo, mas não deu certo, pois ele pede login 2 vezes, (e apaga o nome de usuario):
$ip = getenv(“REMOTE_ADDR”);
// SE IP 127.0.0.1 (RODANDO NO AMBIENTE DESENVOLVIMENTO), DESLOGANDO O ADMIN ANTES DO LOGIN :
if ($ip == ‘127.0.0.1’)
{
echo “deslogando”;
sc_user_logout(‘usr_login’, ‘admin’, ‘appsec_Login.php’, ‘_self’);
}
OBS: Sim, sei que tem opcao para Desativar seguranca no desenvolvimento (não precisar fazer login), mas daí eu teria que colocar como aplicacao inicial a tela de menu e durante o desenvolvimento não conseguiria testar as telas de login , com controles de permissao que uso no login (logar com diferentes usuarios e ver o comportamento da aplicacao com cada tipo de usuario)