Usuário com melhor resposta
SP de Insert Com Problemas - Podem me dar uma força???

Pergunta
-
Obrigado pela atenção...
Bom, estou com um problema no insert, vou postar o erro que está dando, depois minha stored procedure, e por último os dados que estou enviando para stored procedure através do asp...
Code SnippetServer: Msg 170, Level 15, State 1, Line 1
Line 1: Incorrect syntax near ','.Code SnippetALTER procedure dbo.sp_IncluirFornecedorCPF
@for_cgccpf varchar(15)
,@for_nome varchar(50)
,@for_rua varchar(50)
,@for_numero varchar(5)
,@for_complemento varchar(15)
,@for_bairro varchar(30)
,@for_cidade varchar(30)
,@for_cep varchar(8)
,@for_uf varchar(2)
,@for_fone1 varchar(12)
,@for_fone2 varchar(12)
,@for_ctacorrente varchar(10)
,@for_tipopessoa varchar(2) = 'F'
,@for_observacao varchar(200)
,@for_email varchar(50)
,@for_cod_banco numeric(10)
,@for_inscr_inss varchar(20)
,@for_pis_pasep varchar(20)
,@for_dv_ctacorrente varchar(2)
,@for_CBO varchar(6)
,@for_dta_nasc datetime = '17530101'
,@for_ag_cod varchar(10)
as
set nocount onIf not exists (select * from fornecedor where for_cgccpf=@for_cgccpf)
BEGIN
insert into fornecedor(
for_cgccpf,for_nome,for_rua,for_numero
,for_complemento,for_bairro,for_cidade,for_cep
,for_uf,for_fone1,for_fone2,for_ctacorrente
,for_tipopessoa,for_observacao, for_email, for_cod_banco
,for_inscr_inss,for_pis_pasep,for_dv_ctacorrente
,for_CBO,for_dta_nasc,for_ag_cod)
values(
@for_cgccpf,@for_nome,@for_rua,@for_numero
,@for_complemento,@for_bairro,@for_cidade,@for_cep
,@for_uf,@for_fone1,@for_fone2,@for_ctacorrente
,@for_tipopessoa,@for_observacao,@for_email,@for_cod_banco
,@for_inscr_inss,@for_pis_pasep,@for_dv_ctacorrente
,@for_CBO,@for_dta_nasc,@for_ag_cod)
EndCode Snippetexec sp_IncluirFornecedorCPF '51222981220' , 'AUGUSTO TESTE' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '', '' , , '' , '', '', 0 , '' , ''
Respostas
-
Bom dia Augusto, experimenta isso:
ALTER procedure dbo.STP_INSERIR_FORNECEDOR
@for_cgccpf varchar(15) = null
,@for_nome varchar(50) = null
,@for_nome_fantasia varchar(50) = null
,@for_Dta_Nasc varchar(10) = null
,@for_CBO varchar(6) = null
,@for_inscr_estadual varchar(20) = null
,@for_inscr_municipal varchar(20) = null
,@for_inscr_inss varchar(20) = null
,@for_pis_pasep varchar(20) = null
,@for_rua varchar(50) = null
,@for_numero varchar(5) = null
,@for_complemento varchar(15) = null
,@for_cep varchar(8) = null
,@for_bairro varchar(30) = null
,@for_cidade varchar(30) = null
,@for_uf varchar(2) = null
,@for_fone1 varchar(12) = null
,@for_fone2 varchar(12) = null
,@for_email varchar(50) = null
,@ban_cod numeric = null
,@age_cod int = null
,@for_ctacorrente varchar(10) = null
,@for_tipopessoa varchar(1) = null
,@for_dv_ctacorrente varchar(2) = null
,@for_restricao int = null
,@for_observacao varchar(200) = nullAS
Declare @Ffor_DTA_Nasc Datetime
SET @Ffor_DTA_Nasc = CONVERT(datetime, @for_Dta_Nasc,103)
IF NOT EXISTS(SELECT * from fornecedor where for_cgccpf = @for_cgccpf)
BEGIN
BEGIN TRANSACTION
INSERT INTO fornecedor (
for_cgccpf, for_nome, for_nome_fantasia,
for_Dta_Nasc, for_CBO, for_inscr_estadual,
for_inscr_municipal, for_inscr_inss, for_pis_pasep,
for_rua, for_numero, for_complemento, for_cep,
for_bairro, for_cidade, for_uf,
for_fone1, for_fone2, for_email,
ban_cod, age_cod, for_ctacorrente,
for_tipopessoa, for_dv_ctacorrente, for_restricao,
for_observacao)
VALUES (
@for_cgccpf, @for_nome, @for_nome_fantasia,
@Ffor_Dta_Nasc, @for_CBO, @for_inscr_estadual,
@for_inscr_municipal, @for_inscr_inss, @for_pis_pasep,
@for_rua, @for_numero, @for_complemento, @for_cep,
@for_bairro, @for_cidade, @for_uf,
@for_fone1, @for_fone2, @for_email,
@ban_cod, @age_cod, @for_ctacorrente,
@for_tipopessoa, @for_dv_ctacorrente, @for_restricao,
@for_observacao)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
END
ELSE
BEGIN
BEGIN TRANSACTION
UPDATE fornecedor
SET for_cgccpf = @for_cgccpf, for_nome = @for_nome, for_nome_fantasia = @for_nome_fantasia,
for_Dta_Nasc = @Ffor_Dta_Nasc, for_CBO = @for_CBO, for_inscr_estadual = @for_inscr_estadual,
for_inscr_municipal = @for_inscr_municipal, for_inscr_inss = @for_inscr_inss, for_pis_pasep = @for_pis_pasep,
for_rua = @for_rua, for_numero = @for_numero, for_complemento = @for_complemento, for_cep = @for_cep,
for_bairro = @for_bairro, for_cidade = @for_cidade, for_uf = @for_uf,
for_fone1 = @for_fone1, for_fone2 = @for_fone2, for_email = @for_email,
ban_cod = @ban_cod, age_cod = @age_cod, for_ctacorrente = @for_ctacorrente,
for_tipopessoa = @for_tipopessoa, for_dv_ctacorrente = @for_dv_ctacorrente, for_restricao = @for_restricao,
for_observacao = @for_observacao
WHERE (for_cgccpf = @for_cgccpf)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
ENDEspero ter ajudado
Todas as Respostas
-
-
Olá Augusto!!
Passe NULL onde não terá parâmetro. Veja que você passou ,, passei ,NULL, exemplo
Code Snippetexec sp_IncluirFornecedorCPF '51222981220' , 'AUGUSTO TESTE' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '', '' , NULL , '' , '', '', 0 , '' , '' -
-
Olá Alexandre, Júnior
Obrigado pela resposta, realmente não havia atentado para isso... Bom, fiz as modificações, agora etsou com um problema no campo data, na tabela está definido como smalldatetime, e estou passando os parâmetros abaixo que está dando o seguinte erro:
Obs.: Como faço para converter o campo data para não acontecer este tipo de problema? Grato...
ERRO:
Code SnippetServer: Msg 8114, Level 16, State 4, Procedure sp_IncluirFornecedorCPF, Line 0
Error converting data type varchar to datetime.PARÂMETROS
exec sp_IncluirFornecedorCPF '51222981220' , 'AUGUSTO TESTE' , 'TESTE' , '123' , 'TESTE' , 'MARCO' , 'BELEM' , '22101980' , 'PA' , '91 32762299' , '91 91128955' , '14569' , 'F' , 'TESTE', 'ACFELIPE@MASN.COM.BR' , 123 , '123' , '1234', '9' , '22101980' , '12' , '00201'
SP MODIFICADA
Code SnippetALTER procedure dbo.sp_IncluirFornecedorCPF
@for_cgccpf varchar(15)
,@for_nome varchar(50)
,@for_rua varchar(50)
,@for_numero varchar(5)
,@for_complemento varchar(15)
,@for_bairro varchar(30)
,@for_cidade varchar(30)
,@for_cep varchar(8)
,@for_uf varchar(2)
,@for_fone1 varchar(12)
,@for_fone2 varchar(12)
,@for_ctacorrente varchar(10)
,@for_tipopessoa varchar(2) = 'F'
,@for_observacao varchar(200)
,@for_email varchar(50)
,@for_cod_banco numeric(10)
,@for_inscr_inss varchar(20)
,@for_pis_pasep varchar(20)
,@for_dv_ctacorrente varchar(2)
,@for_CBO varchar(6)
,@for_dta_nasc smalldatetime = '17530101'
,@for_ag_cod varchar(10)AS
set nocount onIf not exists (select * from fornecedor where for_cgccpf=@for_cgccpf)
BEGIN
insert into fornecedor(
for_cgccpf,for_nome,for_rua,for_numero
,for_complemento,for_bairro,for_cidade,for_cep
,for_uf,for_fone1,for_fone2,for_ctacorrente
,for_tipopessoa,for_observacao, for_email, for_cod_banco
,for_inscr_inss,for_pis_pasep,for_dv_ctacorrente
,for_dta_nasc,for_ag_cod,for_CBO)
values(
@for_cgccpf,@for_nome,@for_rua,@for_numero
,@for_complemento,@for_bairro,@for_cidade,@for_cep
,@for_uf,@for_fone1,@for_fone2,@for_ctacorrente
,@for_tipopessoa,@for_observacao,@for_email,@for_cod_banco
,@for_inscr_inss,@for_pis_pasep,@for_dv_ctacorrente
,@for_dta_nasc,@for_ag_cod,@for_CBO)
End -
Augusto,
Você deseja converter o valor armazenado em um campo datetime para varchar ou char?
Veja se este exemplo poderá ajudar, utilizando a função convert.
Code SnippetConvert(VarChar(10),SeuCampoData,103)
ou
Convert(Char(10),SeuCampoData, 103)
ou
Convert(Char(10),SeuCampoData)
-
Olá Júnior, Alexandre e Anderson
A bronca como já deu para ver é no momento do da execução da sql de inserrção de dados. Agora vamos por parte para que possa repassar corretamente minhas dificuldades. Fiz algumas correções no código afim de eliminar o problema mas não deu certo...
1 - Esse é o erro que está dando agora:
Code SnippetServer: Msg 8114, Level 16, State 4, Procedure sp_IncluirFornecedorCPF, Line 0
Error converting data type varchar to smalldatetime.2 - Essa é SQL que passo para chamar SP através do ASP:
Code Snippetsql = " SET DATEFORMAT DMY "
sql = sql & "exec sp_IncluirFornecedorCPF '" & var_cpf & "' , '" & var_nome & "' , '" & var_logradouro & "' , '" & var_num & "' , '" & var_complemento & "' , '" & var_bairro & "' , '" & var_cidade & "' , '" & var_cep & "' , '" & var_uf & "' , '" & var_tel & "' , '" & var_fax &"' , '" & var_cta & "' , '" & var_pessoa & "' , '" & var_obs & "', '" & var_mail & "' , " & var_ban & " , '" & var_inscinss & "' , '" & var_pispasep & "', '" & var_digconta & "' , '" & var_dtanasc & "' , '" & var_age & "' , '" & var_cbo & "'"SET DATEFORMAT DMY exec sp_IncluirFornecedorCPF '51222981220' , 'AUGUSTO CESAR' , 'dssadas' , '1231' , 'adsasd' , 'marco' , 'belem' , '66610160' , 'PA' , '91 32762299' , '91 32762299' , '1313' , 'F' , 'TESTE', 'acfelipe@gmail.com' , 124 , '1231245' , '211', '9' , '22/10/1980' , '1465' , '00103'
3 - Essa é a minha sp no sql server
Code SnippetSET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GOALTER procedure dbo.sp_IncluirFornecedorCPF
@for_cgccpf varchar(15)
,@for_nome varchar(50)
,@for_rua varchar(50)
,@for_numero varchar(5)
,@for_complemento varchar(15)
,@for_bairro varchar(30)
,@for_cidade varchar(30)
,@for_cep varchar(8)
,@for_uf varchar(2)
,@for_fone1 varchar(12)
,@for_fone2 varchar(12)
,@for_ctacorrente varchar(10)
,@for_tipopessoa varchar(2) = 'F'
,@for_observacao varchar(200)
,@for_email varchar(50)
,@for_cod_banco numeric(10)
,@for_inscr_inss varchar(20)
,@for_pis_pasep varchar(20)
,@for_dv_ctacorrente varchar(2)
,@for_CBO varchar(6)
,@for_dta_nasc smalldatetime = '1900-01-01 00:00:00'
,@for_ag_cod varchar(10)AS
set nocount onIf not exists (select * from fornecedor where for_cgccpf=@for_cgccpf)
BEGIN
insert into fornecedor(
for_cgccpf,for_nome,for_rua,for_numero
,for_complemento,for_bairro,for_cidade,for_cep
,for_uf,for_fone1,for_fone2,for_ctacorrente
,for_tipopessoa,for_observacao, for_email, for_cod_banco
,for_inscr_inss,for_pis_pasep,for_dv_ctacorrente
,for_dta_nasc,for_ag_cod,for_CBO)
values(
@for_cgccpf,@for_nome,@for_rua,@for_numero
,@for_complemento,@for_bairro,@for_cidade,@for_cep
,@for_uf,@for_fone1,@for_fone2,@for_ctacorrente
,@for_tipopessoa,@for_observacao,@for_email,@for_cod_banco
,@for_inscr_inss,@for_pis_pasep,@for_dv_ctacorrente
,@for_dta_nasc,@for_ag_cod,@for_CBO)
EndGO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO4 - As variáveis que capturo da página ASP
Code Snippetvar_cpf = Trim(Request.Form("cpf"))
var_nome = ucase(Request.Form("nome"))
var_dtanasc = Trim(Request.Form("dtanascimento"))
var_cbo = Trim(Request.Form("cbo"))
var_inscinss = Trim(Request.Form("inscinss"))
var_pispasep = Trim(Request.Form("pispasep"))
var_logradouro = Trim(Request.Form("logradouro"))
var_complemento = Trim(Request.Form("complemento"))
var_num = Trim(Request.Form("numendereco"))
var_cep = Trim(Request.Form("cep"))
var_bairro = Trim(Request.Form("bairro"))
var_cidade = Trim(Request.Form("cidade"))
var_uf = Trim(Request.Form("estado"))
var_tel = Trim(Request.Form("telefone"))
var_fax = Trim(Request.Form("fax"))
var_ban = Trim(Request.Form("banco"))
var_age = Trim(Request.Form("agencia"))
var_cta = Trim(Request.Form("conta"))
var_obs = Trim(Request.Form("observacao"))
var_digconta = Trim(Request.Form("digconta"))
var_mail = Trim(Request.Form("email"))
var_pessoa = Trim(Request.Form("tipodepessoa"))Bom, meus amigos é isso!
Pela msg do erro o problema está na data de nascimento, né? É problema de conversão?
Caso vocês tenham alguma idéia, eu agradeço!!!
Um abraço,
Augusto
-
-
-
Olá Gente,
Bom, tentei quase tudo o que relataram e nada... Porém uma luz apareceu no fim do túnel, quando testei no formato 'yyyy-mm-dd' gravou... Minha dúvida é:
Como faço (código) para pegar a variável @for_dta_nasc e converter para o padrão americano, lembrando sempre que ela está vindo do ASP pelo padrão brasileiro???
Li algumas coisas por aqui no fórum, mas ainda não peguei bem...
Alexandre, essa adaptação que você sugeriu, funcionou... mas eu estava alterando na unha como no exemplo abaixo:
Code Snippetexec STP_INSERIR_FORNECEDOR '5122298120','ASDASDAS', null,'1980/10/22','00203', null, null,'','','','','','','','','','','','',123,,'','F','', null, ''
Como faço isso via código no sql server? Alguns artigos falam que devo declarar uma variável alternativa, trabalhar com ela, e depois igualar a variável repassada no inicio do cabeçalho do código (SP)... Bom, como vocês podem observer tentei fazer algo do tipo na área comentada logo após a instrução AS, mas não conseui...
Vocês me auxiliar nisso?
Grato a todos
Code SnippetALTER procedure dbo.STP_INSERIR_FORNECEDOR
@for_cgccpf varchar(15) = null
,@for_nome varchar(50) = null
,@for_nome_fantasia varchar(50) = null
,@for_Dta_Nasc datetime = null
,@for_CBO varchar(6) = null
,@for_inscr_estadual varchar(20) = null
,@for_inscr_municipal varchar(20) = null
,@for_inscr_inss varchar(20) = null
,@for_pis_pasep varchar(20) = null
,@for_rua varchar(50) = null
,@for_numero varchar(5) = null
,@for_complemento varchar(15) = null
,@for_cep varchar(8) = null
,@for_bairro varchar(30) = null
,@for_cidade varchar(30) = null
,@for_uf varchar(2) = null
,@for_fone1 varchar(12) = null
,@for_fone2 varchar(12) = null
,@for_email varchar(50) = null
,@ban_cod numeric = null
,@age_cod int = null
,@for_ctacorrente varchar(10) = null
,@for_tipopessoa varchar(1) = null
,@for_dv_ctacorrente varchar(2) = null
,@for_restricao int = null
,@for_observacao varchar(200) = nullAS
--DECLARE @for_Dta_Nasc VARCHAR(10)
--CONVERT(VARCHAR(12),@for_Dta_Nasc,120) AS '120'--SET VAR_DATANASC = CONVERT(datetime, @for_Dta_Nasc)
--CONVERT(VARCHAR, GETDATE(), 103)IF NOT EXISTS(SELECT * from fornecedor where for_cgccpf = @for_cgccpf)
BEGIN
BEGIN TRANSACTION
INSERT INTO fornecedor (
for_cgccpf, for_nome, for_nome_fantasia,
for_Dta_Nasc, for_CBO, for_inscr_estadual,
for_inscr_municipal, for_inscr_inss, for_pis_pasep,
for_rua, for_numero, for_complemento, for_cep,
for_bairro, for_cidade, for_uf,
for_fone1, for_fone2, for_email,
ban_cod, age_cod, for_ctacorrente,
for_tipopessoa, for_dv_ctacorrente, for_restricao,
for_observacao)
VALUES (
@for_cgccpf, @for_nome, @for_nome_fantasia,
@for_Dta_Nasc, @for_CBO, @for_inscr_estadual,
@for_inscr_municipal, @for_inscr_inss, @for_pis_pasep,
@for_rua, @for_numero, @for_complemento, @for_cep,
@for_bairro, @for_cidade, @for_uf,
@for_fone1, @for_fone2, @for_email,
@ban_cod, @age_cod, @for_ctacorrente,
@for_tipopessoa, @for_dv_ctacorrente, @for_restricao,
@for_observacao)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
END
ELSE
BEGIN
BEGIN TRANSACTION
UPDATE fornecedor
SET for_cgccpf = @for_cgccpf, for_nome = @for_nome, for_nome_fantasia = @for_nome_fantasia,
for_Dta_Nasc = @for_Dta_Nasc, for_CBO = @for_CBO, for_inscr_estadual = @for_inscr_estadual,
for_inscr_municipal = @for_inscr_municipal, for_inscr_inss = @for_inscr_inss, for_pis_pasep = @for_pis_pasep,
for_rua = @for_rua, for_numero = @for_numero, for_complemento = @for_complemento, for_cep = @for_cep,
for_bairro = @for_bairro, for_cidade = @for_cidade, for_uf = @for_uf,
for_fone1 = @for_fone1, for_fone2 = @for_fone2, for_email = @for_email,
ban_cod = @ban_cod, age_cod = @age_cod, for_ctacorrente = @for_ctacorrente,
for_tipopessoa = @for_tipopessoa, for_dv_ctacorrente = @for_dv_ctacorrente, for_restricao = @for_restricao,
for_observacao = @for_observacao
WHERE (for_cgccpf = @for_cgccpf)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
END -
Bom dia Augusto, experimenta isso:
ALTER procedure dbo.STP_INSERIR_FORNECEDOR
@for_cgccpf varchar(15) = null
,@for_nome varchar(50) = null
,@for_nome_fantasia varchar(50) = null
,@for_Dta_Nasc varchar(10) = null
,@for_CBO varchar(6) = null
,@for_inscr_estadual varchar(20) = null
,@for_inscr_municipal varchar(20) = null
,@for_inscr_inss varchar(20) = null
,@for_pis_pasep varchar(20) = null
,@for_rua varchar(50) = null
,@for_numero varchar(5) = null
,@for_complemento varchar(15) = null
,@for_cep varchar(8) = null
,@for_bairro varchar(30) = null
,@for_cidade varchar(30) = null
,@for_uf varchar(2) = null
,@for_fone1 varchar(12) = null
,@for_fone2 varchar(12) = null
,@for_email varchar(50) = null
,@ban_cod numeric = null
,@age_cod int = null
,@for_ctacorrente varchar(10) = null
,@for_tipopessoa varchar(1) = null
,@for_dv_ctacorrente varchar(2) = null
,@for_restricao int = null
,@for_observacao varchar(200) = nullAS
Declare @Ffor_DTA_Nasc Datetime
SET @Ffor_DTA_Nasc = CONVERT(datetime, @for_Dta_Nasc,103)
IF NOT EXISTS(SELECT * from fornecedor where for_cgccpf = @for_cgccpf)
BEGIN
BEGIN TRANSACTION
INSERT INTO fornecedor (
for_cgccpf, for_nome, for_nome_fantasia,
for_Dta_Nasc, for_CBO, for_inscr_estadual,
for_inscr_municipal, for_inscr_inss, for_pis_pasep,
for_rua, for_numero, for_complemento, for_cep,
for_bairro, for_cidade, for_uf,
for_fone1, for_fone2, for_email,
ban_cod, age_cod, for_ctacorrente,
for_tipopessoa, for_dv_ctacorrente, for_restricao,
for_observacao)
VALUES (
@for_cgccpf, @for_nome, @for_nome_fantasia,
@Ffor_Dta_Nasc, @for_CBO, @for_inscr_estadual,
@for_inscr_municipal, @for_inscr_inss, @for_pis_pasep,
@for_rua, @for_numero, @for_complemento, @for_cep,
@for_bairro, @for_cidade, @for_uf,
@for_fone1, @for_fone2, @for_email,
@ban_cod, @age_cod, @for_ctacorrente,
@for_tipopessoa, @for_dv_ctacorrente, @for_restricao,
@for_observacao)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
END
ELSE
BEGIN
BEGIN TRANSACTION
UPDATE fornecedor
SET for_cgccpf = @for_cgccpf, for_nome = @for_nome, for_nome_fantasia = @for_nome_fantasia,
for_Dta_Nasc = @Ffor_Dta_Nasc, for_CBO = @for_CBO, for_inscr_estadual = @for_inscr_estadual,
for_inscr_municipal = @for_inscr_municipal, for_inscr_inss = @for_inscr_inss, for_pis_pasep = @for_pis_pasep,
for_rua = @for_rua, for_numero = @for_numero, for_complemento = @for_complemento, for_cep = @for_cep,
for_bairro = @for_bairro, for_cidade = @for_cidade, for_uf = @for_uf,
for_fone1 = @for_fone1, for_fone2 = @for_fone2, for_email = @for_email,
ban_cod = @ban_cod, age_cod = @age_cod, for_ctacorrente = @for_ctacorrente,
for_tipopessoa = @for_tipopessoa, for_dv_ctacorrente = @for_dv_ctacorrente, for_restricao = @for_restricao,
for_observacao = @for_observacao
WHERE (for_cgccpf = @for_cgccpf)
IF @@ERROR <> 0
ROLLBACK TRANSACTION
ELSE
COMMIT TRANSACTION
ENDEspero ter ajudado
-
Olá Anderson,
Cara muito obrigado era isso mesmo, pô quando a gente não sabe é uma m**** mesmo...(rs)
Eu li uns artigos no imasters e vi alguns exemplos daqui do fórum, montei igual como vc postou agora, porém não atentei que tinha que mudar as variáveis nas transações, eu continuei com @for_dta_nasc e a "GRANDE SACADA" era substituir pela variável declarada logo abaixo do cabeçalho do código (@Ffor_dta_nasc)... ehhehehehhe
Bom, novamente agradeço, já foi uma grande aprendizado...
Agradeço tb a todos que leram o post e se interessaram em me ajudar!!!
Abcs,
Augusto