[firebase-br] Revoke do PUBLIC

Gladiston Santana gladiston.santana em gmail.com
Sexta Agosto 4 15:07:21 -03 2023


Boa tarde!
A função round pode retornar tanto inteiro como float:
https://firebirdsql.org/file/documentation/html/en/refdocs/fblangref40/firebird-40-language-reference.html#fblangref40-scalarfuncs-round

Às vezes o arredondamento não é do jeito que a gente quer, daí adaptações
precisam ser feitas, por exemplo, aqui no Brasil temos um tipo de
arredondamento usando uma norma ABNT que difere completamente do padrão
sql-92, daí temos que criar uma sqlfunction adaptando a partir de uma
função mais próxima. Veja esse exemplo:
https://gladiston.net.br/banco-de-dados/arredondamento-do-tipo-abnt/

Sabendo um pouco de psql vamos suprindo funções que não existem, se quiser
pode pegar emprestado as que publiquei na minha pagina pessoal:
https://gladiston.net.br/banco-de-dados/

Em qui., 3 de ago. de 2023 às 21:37, Mário Reis <mariodosreyx em gmail.com>
escreveu:

> Boa tardes Gladison
>
> Você diz que há muito não usa udfs.
> Estou tentando o mesmo mas esbarro em algumas dificuldades.
> Ex: udf_rounddec(X, y) tentei o round(x, y) mas não é o mesmo. Retorna um
> inteiro enquanto o outro retorna um double.
> Como fazer num caso destes. Conhece o substituto? Obrigado
>
> Mário Reis (919262146)
>
> A quarta, 2 de ago de 2023, 17:03, Mário Reis <mariodosreyx em gmail.com>
> escreveu:
>
>> Disponível para qualquer coisa. Embora com tempo mesmo escasso, sempre se
>> arranja uma brecha.
>> E, não está pronto porque ainda falta fazer o registo de
>> correspondência de modo automática e enviar por mail.
>> Nesta última parte, não faço, ainda, a menor ideia de como irei fazer,
>> mas hei-de lá chegar.
>> Atentamente
>> Com os meus melhores cumprimentos
>> Mário Agostinho Reis
>> 919262146
>>
>> Esta mensagem contém informação de natureza confidencial e é
>> exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por engano,
>> receber este email agradecemos que não o copie nem o reenvie e que nos
>> notifique do ocorrido através do email de resposta.
>>
>>
>> Mário Reis <mariodosreyx em gmail.com> escreveu no dia quarta, 2/08/2023
>> à(s) 16:51:
>>
>>> O meu código está um pedaço (grande) sujo, mas se V. tiver pachorra para
>>> dar um olhada e remover uns bugs  passo-te  já a seguir.
>>> Eu antes nunca tinha trabalhado com basic de forma que ainda estou
>>> tentando perceber o porque do "argument errors"
>>> Com os meus melhores cumprimentos
>>> Mário Agostinho Reis
>>> 919262146
>>>
>>> Esta mensagem contém informação de natureza confidencial e é
>>> exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por
>>> engano,
>>> receber este email agradecemos que não o copie nem o reenvie e que nos
>>> notifique do ocorrido através do email de resposta.
>>>
>>>
>>> Gladiston Santana <gladiston.santana em gmail.com> escreveu no dia
>>> segunda, 31/07/2023 à(s) 17:43:
>>>
>>>> Bacana Mario,
>>>>
>>>> Depois se tiver um tempo, me fala como você faz o acesso do swriter ou
>>>> scalc ao banco.
>>>> Um banco bem modelado e feito direitinho com triggers e triggers
>>>> disparando procedures pode funcionar sem um sistema e tô querendo
>>>> demonstrar isso no futuro e explicar que o banco bem modelado pode
>>>> funcionar sem um sistema complexo por trás.
>>>>
>>>> []´s
>>>>
>>>> Em qui., 27 de jul. de 2023 às 16:47, Mário Reis <
>>>> mariodosreyx em gmail.com> escreveu:
>>>>
>>>>> Pois! Entendo o que diz. Por exemplo os meus usuários via swriter e
>>>>> através de umas macros que ando a aperfeiçoar, em basic, acedem à tabela
>>>>> clientes da m/ FDB.
>>>>> Chamam um novo documento e ele valida user e pwd cria o documento com.
>>>>> N⁰ único, referente e data e com um botão vai à tabela cliente e carrega o
>>>>> endereço fiscal etc...o sequencial único é gerado à maneira antiga, dis
>>>>> dois todos trás o último e acrescento +1 e gravo . Num pequeno escritório
>>>>> está a funcionar e agora ninguém mais grava o documento novo em cima do
>>>>> velho perdendo-o.
>>>>> Mas aí entram todos como Leitor que só lê não faz mais nada.
>>>>>
>>>>> A quinta, 27/07/2023, 17:23, Gladiston Santana <
>>>>> gladiston.santana em gmail.com> escreveu:
>>>>>
>>>>>> No caso de UDFs e SQL Functions é complicado saber quem irá usar ou
>>>>>> não, como são objetos que apenas retornam dados então como política eu dou
>>>>>> acesso a PUBLIC. Embora hoje, não uso mais UDFs.
>>>>>> Acho que a prática mais eficiente para permissões é você criar uma
>>>>>> role, digamos "ROLE_VENDAS" e aplicar os acessos que o sistema de vendas
>>>>>> precisa ter a este role. Daí quem se logar usando o sistema de vendas
>>>>>> identifica-se com user_name, password, database, host e enfim ocultamente
>>>>>> dentro do seu programa você informa também a ROLE_VENDAS e obterá todos os
>>>>>> acessos necessários. Daí é só ficar associando usuários do sistema de
>>>>>> vendas a ROLE_VENDAS, é muito mais fácil gerenciar dessa forma ao invés de
>>>>>> individualmente, até porque, um usuario mal intencionado pode praticar
>>>>>> modificações por fora do sistema usando um excel da vida.
>>>>>>
>>>>>> De inicio, voce pode criar uma ROLE_ADMIN e dar um "grant all to all"
>>>>>> nela e associar todos os usuarios a ela e logar-se no sistema sempre usando
>>>>>> esta ROLE. Daí ninguem mais reclama de acesso e por fora do sistema(ex.
>>>>>> excel) o usuario não terá acesso algum, a menos que voce forneça o nome da
>>>>>> role para ele.
>>>>>>
>>>>>> inte+
>>>>>>
>>>>>>
>>>>>> Em qui., 27 de jul. de 2023 às 07:41, Mário Reis <
>>>>>> mariodosreyx em gmail.com> escreveu:
>>>>>>
>>>>>>> Gladiston um bom dia para você,
>>>>>>> Não não causou qualquer erro, pelo contrário ao fazer to public os
>>>>>>> outros usuários não ficavam autorizados e conferi várias vezes o
>>>>>>> *commit*
>>>>>>> Há uma possibilidade de haver algum bug na ferramenta que uso o EMS
>>>>>>> Sql Manager. Tive que fazer um script "à lá mano" com editor de texto e
>>>>>>> depois correr
>>>>>>> GRANT EXECUTE ON FUNCTION UDF_YEAR TO PUBLIC, + lista;
>>>>>>> Eu achei muito estranho, pois de acordo com a documentação é como
>>>>>>> você diz. Já escrevi para eles, que validaram o erro e propõem-se corrigir
>>>>>>> na próxima release.
>>>>>>>
>>>>>>>
>>>>
>>>> --
>>>> Gladiston Santana
>>>> Escritório: 4787-3122 Ramal 228
>>>> Cel Tim/WhatsApp: (11)95144-8188
>>>>
>>>

-- 
Gladiston Santana
Escritório: 4787-3122 Ramal 228
Cel Tim/WhatsApp: (11)95144-8188


Mais detalhes sobre a lista de discussão lista