Fórum Caso de uso #5032

25/04/2009

0

Olá , Recebi minha primeira propoposta de trabalho e estou muito feliz. O pessoal da empresa foi tão gente fina que mandaram o caso de uso ante do meu teste prático. Porém estou muito preocupada, pois estou achando muito complidado. Gostaria de uma ajuda, qual quer coisa que vcs me puderem me ajudar para nesse momento tão importante.   Estou enviando o caso de uso , mais o problema que só tenho 8h para realizar essa tarefa e começa na segunda feira às 13:00h. Nossa estou muito nervosa.   Vou tentar fazer o cadastro no banco e usar o código que o Carlos me ensinou. Como eu nunca fiz nada tão fomal assim, estou com dificuldade de visualizar o projeto. Eu pensei em postar aqui na consultoria e pedir para montar os formularios, se isso for possível. Pelo menos para eu ter uma noção de como funciona as coisas. A conexão com o banco fica comigo, mais não estou conseguindo visualizar a aplicação em minha mente. Por exemplo: No caso de uso vc vai lêr no caso normal escrito assim: 1. O usuário acessa o formulário e indica o ID do projeto (identificador do projeto para o qual serão cadastrados os dados). 2. O sistema exibe o formulário para cadastro das informações com as seguintes informações. Acho que essa é a minha principal duvida.   Outra coisa. Seria possível a consultoria montar o lauout do projeto para mim? Pelo menos para eu ter uma noção prática de como devo fazer. Não há necessidade de criar a conexão com o banco, apensa ter a tabela pronta. è pq tô tão nervosa que estou perdendo a autoconfiança. Abraço amigo e obrigada.   caso de uso:     Histórico de Revisões Data Responsável Motivo 24/04/2009 Bruno Filype Cunha Criação do Documento Os textos nas cores azul são as explicações de cada item do modelo e os textos na cor verde exemplos de utilização.   Este documento tem o propósito de apresentar o detalhamento do caso de uso do cadastramento das informações do processo Elaborar Plano de Gerenciamento de Escopo. 1.     especificação Esta seção deve detalhar os casos de uso do projeto de software. Cada caso de uso deve ter um identificador único e manual. Não deve ser utilizado o recurso de auto-numeração e/ou marcadores. O subtópico Código deve apresentar o código do caso de uso (cadastrado nas propriedades do documento). Código   : UC-02-10 Código                             : UC-002 O subtópico Nome deve apresentar o nome do caso de uso (cadastrado nas propriedades do documento). Nome   : UC-02-10-Efetuar Nova Compra Nome                               : Cadastrar Plano de Gerenciamento de Escopo Origem  : RF-01, RF-02 e RF-03. O subtópico Requsitos Não-funcionais deve apresentar os códigos dos requisitos não-funcionais relacionados ao caso de uso para o mapeamento ente artefatos. Requisitos Não-Funcionais: RS-03 e RI-05.   O subtópico Atores deve apresentar os atores que utilizam o caso de uso. Atores  : Funcionário (único ator) Atores       : Gerente do Projeto   O subtópico Descrição deve apresentar um curto resumo do que faz o caso de uso. O subtópico Pré-Condições deve apresentar as condições que devem ser satisfeitas para que o caso de uso seja acionado. Para facilitar o entendimento, é interessante que estejam enumeradas. Pré-Condições: 1. O funcionário deve estar logado no sistema. Pré-Condições: ·          Se existir alguma versão cadastrada, carregar a versão na tela; ·          Se não existir versão, mostra apenas: o         Cabeçalho do empreendimento o         Novo (Ativado) o         Salvar (Desativado) o         Salvar Nova Versão (Desativado) o         Excluir (Desativo)   Modelo de Dados: ·          Banco de Dados: SabespForms ·          Tabela: EsEp002F1 ·          Tabela da Seção Pontos de Controle: PontoDeControle ·          View do Campo Responsável: Recursos ·          View do Campo Periodicidade: Periodicidade                 Este subtópico Curso Normal deve apresentar o fluxo normal do caso de uso, ou seja, o fluxo principal que considera a perfeita execução do caso de uso (sem exceções). É descrito por uma seqüência de passos enumerados que explicitam a interação entre o ator e o sistema. No curso normal podem existir chamadas a outros casos de uso, que são caracterizadas pelas dependências entre casos de uso. Essas chamadas são explicitadas nas descrições dos cursos e os casos de uso ou eventos de caso de uso acionados devem ter seus nomes destacados em itálico. Existem, basicamente, dois tipos de dependências: inclusão e extensão. No caso da inclusão o caso de uso base referencia o caso de uso que está sendo incluído, ou seja, o caso de uso base conhece e depende da ação executada pelo caso de uso incluído. Na extensão, o caso de uso base não conhece o caso de uso extensão. É o caso de uso extensão que conhece o caso de uso base e, portanto, depende dele. A extensão é muito utilizada quando se possui um caso de uso base definido e para ele criam-se extensões. No entanto, não se deseja que para cada extensão criada o caso de uso base seja alterado.. Se o caso de uso for dividido em eventos de caso de uso deve-se descrever o curso normal de cada evento de caso de uso da seguinte forma: <nome do evento de caso de uso 1>: <a descrição do curso normal> ... <nome do evento de caso de uso n>: <a descrição do curso normal> Curso Normal: 1.funcionário (usuário) informa o cliente, o valor da compra e a forma de pagamento e o funcionário (atendente) que atendeu o cliente; 2.Caso o cliente não esteja cadastrado, o caso de uso Cadastrar Cliente é realizado; 3.evento de caso de uso Incluir Novo Veículo do caso de uso Cadastrar Veículo é realizado. 4.A compra é registrada tendo a data corrente como data da compra. Curso Normal 1.      O usuário acessa o formulário e indica o ID do projeto (identificador do projeto para o qual serão cadastrados os dados). 2.      O sistema exibe o formulário para cadastro das informações com as seguintes informações: a.      Informações do cadastro                                                                                        i.      CoIn005 - Declaração Preliminar de Escopo Atualizada: campo texto de escrita livre.                                                                                      ii.      CoIn004 - Estudo de Concepção e Projeto Básico: campo texto de escrita livre.                                                                                     iii.      CoOr003F1 - Pedido de Financiamento (se houver): campo texto de escrita livre.                                                                                    iv.      Pontos de Controle: campo texto de escrita livre.                                                                                      v.      Responsável: dropdown que carrega os responsáveis.                                                                                    vi.      Periodicidade: dropdown que carrega as periodicidades.                                                                                   vii.      Procedimento de Verificação: campo texto de escrita livre.                                                                                 viii.      Observações: campo texto de escrita livre.                                                                                    ix.      Pontos de Controle – Específicos com o Cliente 1.      Pontos de Controle: campo texto de escrita livre. 2.      Responsável: campo texto de escrita livre. 3.      Periodicidade: campo texto de escrita livre. 4.      Procedimento de Verificação: campo texto de escrita livre. 5.      Observações: campo texto de escrita livre.                                                                                      x.      Pontos de Controle – Empreendimento Total 1.      Pontos de Controle: campo texto de escrita livre. 2.      Responsável: campo texto de escrita livre. 3.      Periodicidade: campo texto de escrita livre. 4.      Procedimento de Verificação: campo texto de escrita livre. 5.      Observações: campo texto de escrita livre.     b.      Botão Novo                                                                                        i.      O usuário seleciona o botão [Novo].                                                                                      ii.      Se existir dados nos campos, o sistema remove os dados e habilita os campos para preenchimento.                                                                                     iii.      O sistema desabilita o botão [Pontos de Controle – Específicos com o Cliente].                                                                                    iv.      O sistema desabilita o botão [Pontos de Controle – Empreendimento Total].                                                                                      v.      O sistema oculta a seção Pontos de Controle.                                                                                    vi.      O sistema gera o número da versão.                                                                                   vii.      O sistema habilita o botão [Salvar]. c.       Botão Salvar                                                                                        i.      O usuário seleciona o botão [Salvar].                                                                                      ii.      O sistema salva os valores preenchidos.                                                                                     iii.      O sistema habilita o botão [Pontos de Controle – Específicos com o Cliente].                                                                                    iv.      O sistema habilita o botão [Pontos de Controle – Empreendimento Total].                                                                                      v.      O sistema exibe a seção Pontos de Controle.                                                                                    vi.      O sistema atualiza o grid de versão. d.      Botão Salvar Nova Versão                                                                                        i.      O usuário seleciona o botão [Salvar Nova Versão].                                                                                      ii.      O sistema salva os valores preenchidos como uma nova versão.                                                                                     iii.      O sistema gera o número da versão.                                                                                    iv.      O sistema atualiza o grid de versão. e.      Botão Excluir                                                                                        i.      O usuário seleciona o botão [Excluir].                                                                                      ii.      O sistema define o valor 0 na coluna [excluído]                                                                                     iii.      O sistema não exibe as informações da versão excluída.                                                                                    iv.      O sistema atualiza o grid de versão.                                                                                      v.      Se não existir mais nenhuma versão, o sistema exibirá somente o cabeçalho do empreendimento, os botões Novo, Salvar, Salvar Nova Versão e Excluir. O sistema irá habilitar somente o botão Novo. f.        Botão Visualizar                                                                                        i.      O usuário seleciona o botão [Visualizar] para versão desejada.                                                                                      ii.      O sistema exibe os dados da versão selecionada nos campos do formulário. g.      Seção Pontos de Controle – Específicos com o Cliente                                                                                        i.      Botão Pontos de Controle – Específicos com o Cliente. 1.      O usuário seleciona o botão [Pontos de Controle – Específicos com o Cliente] 2.      O sistema exibe a seção para preenchimento.                                                                                      ii.      Botão Salvar 1.      O usuário seleciona o botão [Salvar]. 2.      O sistema salva os dados. 3.      O sistema limpa os campos da seção. 4.      O sistema define a coluna tipoPontoDeControleTotal na tabela com false.                                                                                     iii.      Botão Fechar 1.      O usuário seleciona o botão [Fechar] 2.      O sistema fecha a seção.                                                                                    iv.      Botão Editar 1.      O usuário seleciona o botão [Editar]. 2.      O sistema exibe os dados selecionados nos campos da seção para que o usuário realize a edição. 3.      O usuário seleciona o botão [Salvar].                                                                                      v.      Botão Excluir 1.      O usuário seleciona o botão [Excluir]. 2.      O sistema define o valor 0 na coluna [excluído]. 3.      O sistema não exibe as informações da versão excluída. h.      Seção Pontos de Controle – Empreendimento Total                                                                                        i.      Botão Pontos de Controle – Empreendimento Total 1.      O usuário seleciona o botão [Pontos de Controle – Empreendimento Total]. 2.      O sistema exibe todos os itens cadastrados.                                                                                      ii.      Botão Fechar 1.      O usuário seleciona o botão [Fechar] 2.      O sistema fecha a seção.                                                                                     iii.      Botão Salvar 1.      O usuário seleciona o botão [Salvar]. 2.      O sistema salva os dados. 3.      O sistema limpa os campos da seção. 4.      O sistema define a coluna tipoPontoDeControleTotal na tabela com true.                                                                                    iv.      Botão Editar 1.      O usuário seleciona o botão [Editar]. 2.      O sistema exibe os dados selecionados nos campos da seção para que o usuário realize a edição. 3.      O usuário seleciona o botão [Salvar].             Layout   O subtópico Pós-condições deve apresentar descrição do estado do sistema após a execução do caso de uso, ou seja, condições que caracterizam o estado do sistema depois da execução do caso de uso. Essas pós-condições vão auxiliar na elaboração dos casos de teste. Para facilitar o entendimento, é interessante que estejam enumeradas. Pós-Condições: 1.Tem-se uma nova compra no sistema com a data de registro sendo a data corrente.  
Lorena Menelli

Lorena Menelli

Responder

Posts

27/04/2009

Lorena Menelli

Bom Dia, tudo bem. Como escrevi abaixo hoje é o meu teste praticom na Prosperi, aqui no ES. Ufss. Acho que o eu compliquei um pouco no meu post abaixo. Acho que o melhor é ir por partes.   Pelo que eu entendi do caso de uso, eu devo fazer um formularido de cadastro e fazer viw no banco.   Vamos as minhas primeiras duvidas, a baixo está a as parte do caso de uso:   Pré-Condições: ·          Se existir alguma versão cadastrada, carregar a versão na tela; ( isso é o view que o modelo de dados se refere?) ·          Se não existir versão, mostra apenas: o         Cabeçalho do empreendimento o         Novo (Ativado) o         Salvar (Desativado) o         Salvar Nova Versão (Desativado) o         Excluir (Desativo) Modelo de Dados: ·          Banco de Dados: SabespForms ·          Tabela: EsEp002F1 ·          Tabela da Seção Pontos de Controle: PontoDeControle ·          View do Campo Responsável: Recursos ·          View do Campo Periodicidade: Periodicida Para carregar a versão na tela, basta carregar um GridView da tabela do banco? Como falço View do Campo Responsável: Recursos e Campo Peirodicidade: Periodicidade? Sqlcommand com = new Sqlcommand("select * from <tabela> where ????, connnect);  <-- é  mais ou menos assim?   _________________________________________________________________________________________   Curso Normal 1.      O usuário acessa o formulário e indica o ID do projeto (identificador do projeto para o qual serão cadastrados os dados). 2.      O sistema exibe o formulário para cadastro das informações com as seguintes informações: ...o resto é a tabela Devo criar um textbox por exemplo, que envia dados do txtid para o banco, por exemplo na coluna idprojeto. O que eu sei é criar a ID automaticamente, Identity Specification, gerando o Id automaticamente. Resumeindo o usuario digira o ID em um txtbox e é feito o cadastro de um int no banco, ou de um nchar.   depois para eu recuperar o projeto é só digitar o digitar o id cadastrado. tipo: como faria essa consulta?   Meu teste começa as 13:00 horas e vou precisar muuuiito de vcs, e tenho apenas 8 horas para finalizar, 4 h hoje e 4h amanhã a tarde.   Gostaria de saber se há possibilidade de minhas perguntas fossem respondidas o mais raído possivel. desculpe a preça pessoa mas é devido os teste. Obrigada   Não estou conseguindo mandar o layout.jpg no  upload. está ocorrendo algum erro, o sistema está criando um monte de pasta estranha.    
Responder

Gostei + 0

27/04/2009

Luiz Maia

Ola Lorena, primeiramente parabens pelo emprego. Bom, vamos la ao que interessa. Pelo que entendi no UC, vc precisa fazer um CRUD. Então os passos são os seguintes:   Popular uma grid com os registros da base Sua grid deve conter colunas para edição, exclusão e visualização de detalhes. No topo de seu form, deve conter um botão de inclusão de mais um registro. Tb deve ser criado um mecanismo de busca, para filtrar os registros da grid.   Veja este layout:     Acho que seria mais ou menos isto aqui que eles querem que vc faça, repare no textbox no campo superioir direito para filtrar os registros da grid. So esta faltando um botão de "Inserir Novo". E tb uma outra coluna como Visualização, como abaixo: Agora é so juntar todos estes recursos na mesma Grid.     Espero ter ajudado. Boa sorte ai Lorena. Qualquer duvida me acione, que te ajudo.   Abraços Att Luiz Maia
Responder

Gostei + 0

28/04/2009

Lorena Menelli

Olá Luiz, entendi perfeitamente. Já fiz a conexão com o banco ontem mesmo e devo voltar para o escritório hoje após 13h. O que estou querendo é muito simples. No GridWiel exite um botão visualizar, ao clicar nesse botão, pegar as informações de cada coluna do Db e preencher os txtbox. Ex: coluna conCoIn004 prenenche o txtCoIn004, desssa forma o usuário modifica o texto e clica em salvar, atualizando as informações do banco.
Responder

Gostei + 0

28/04/2009

Luiz Maia

Lorena, para poder Editar e Excluir registros na base via seu GridView, vc devera usar o metodo RowDataBound.   O RowDataBound é um evento disparado a cada registro listado no gridview, é uma especie de loop que varre os registros e herdam de GridViewRowEventArgs .   Faça o seguinte:   Crie uma coluna usando TemplateField no GridView e jogo o ID do registro no CommandArgument; Crie um metodo de Edição que vc passara este Id como parametro; Crie outra coluna identica a de Editar para Exclusão, e faça um metodo de exclusão tb. Use o RowDataBound para pegar o Id e jogar no CommandArgument.   De uma olhada abaixo:   Agora que você já tem os dados populados na sua GridView, você precisa ter uma coluna com um botão de edição, segue abaixo uma sugestão, repare nas duas ultimas colunas da Grid que possuem imagebuttons, uma para edição e outr para exclusão. <asp:GridView ID="gvDados" runat="server" AutoGenerateColumns="False" DataKeyNames="codfiscal" OnRowDataBound="gvDados_RowDataBound" AllowPaging="True" OnPageIndexChanging="gvDados_PageIndexChanging"> <Columns> <asp:BoundField DataField="numGtd" HeaderText="Número" /> <asp:BoundField DataField="nomDocum" HeaderText="Tipo" /> <asp:TemplateField HeaderText="Alterar" SortExpression="codGtd"> <ItemStyle HorizontalAlign="Center" /> <HeaderStyle HorizontalAlign="Center" Width="1px" /> <ItemTemplate> <asp:ImageButton ID="ibAlterar" runat="server" CausesValidation="False" ImageUrl="~/Images/btn_alterar.gif" OnCommand="Alterar" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Excluir" ShowHeader="False"> <ItemStyle HorizontalAlign="Center" /> <HeaderStyle HorizontalAlign="Center" Width="1px" /> <ItemTemplate> <asp:ImageButton ID="ibExcluir" runat="server" CausesValidation="False" ImageUrl="~/Images/btn_excluir.gif" OnClientClick="javascript:return ConfirmaExclusao('esta GTD');" OnCommand="Excluir" /> </ItemTemplate> </asp:TemplateField> </Columns> <PagerStyle Font-Bold="True" ForeColor="White" /> </asp:GridView>   No evento RowDataBound do GridView, vc coloca os commadsArguments para os itens que deseja editar:   protected void gvDados_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { string codItem = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "codGtd")); ImageButton ibAlterar = e.Row.FindControl("ibAlterar") as ImageButton; ImageButton ibExcluir = e.Row.FindControl("ibExcluir") as ImageButton; ibExcluir.CommandArgument = codItem; ibAlterar.CommandArgument = codItem;} }         E aqui você chama o método que precisa: protected void Alterar(object sender, CommandEventArgs e) { int codItem = Convert.ToInt32("0" + e.CommandArgument); EditarItem(codItem); }   Note que o metodo acima é invocado no GridView na coluna Alterar. Agora é só usar um Panel, por exemplo, e mandar as informações que vc deve recuperar na base para os controles dentro dele, já que vc já tem o ID do registro que deseja alterar. Pode usar a própria parte de cadastro.     O DataRowBound é um recurso que varre seus registros do GridView, para implementa-lo, vá até as propriedades do GridView, no Properties, clique no raio Events e vc vera esta evento la, dê dois cliques nele que seu evento estara criado.     ImageButton ibAlterar = e.Row.FindControl("ibAlterar") as ImageButton;
ImageButton ibExcluir = e.Row.FindControl("ibExcluir") as ImageButton;
ibExcluir.CommandArgument = codItem;
ibAlterar.CommandArgument = codItem;}   Considerações do trecho acima: Foram criados dois ImageButton, usamod o findcontrol para "acha-los" dentro do GridView; O CommandArgument é um atributo destes controles onde podemos armazenar valores, no seu caso o ID de cada linha.     string codItem = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "codTeste")); Esta linha é usada dentro do DataRowBound para receber os valores de sua coleção para cada registro. Por exemplo, vc tem na sua base 3 registros:   codTeste    dscNome 1                Luiz 2                Agnelo 3                Maia     Quando vc usa o DataRow, ele varre os registros e vai setando-os para cada linha no GridView. Repare que o codigo acima, recupera o codTeste, para recuperar o nome, usa-se:   string codItem = Convert.ToString(DataBinder.Eval(e.Row.DataItem, "dscNome")); E quando vc joga este valor no commandArgument, cada linha do GridView assume o valor do registro da vez.     Seria altamente recomendavel vc ler este artigo:   https://www.devmedia.com.br/articles/viewcomp.asp?comp=9281   Caso não possua acesso, providenciamos para vc!     Segue uma aplicação de exemplo que fiz para um soliticante. Tem todos os metodos de um CRUD no arquivo Descricao.aspx dentro da pasta Adminstracao.     http://video.devmedia.com.br/naoexclusivo/LuizMaia/Consultoria/fernando01.zip     Aguardo seu retorno, Abraços   Att Luiz Maia
Responder

Gostei + 0

28/04/2009

Lorena Menelli

Luiz, meu projeto até agora está da seguinte forma.   - Preencho os campos txt e consigo cadastrar as informações fazendo insert no banco; - Quanto eu clico no batão visualizar, as agumas colunas(não todas) aparecem no txtbox, para fazer as devidas modificações.   Até aí tudo bem.   A questão é que não posso colocar um botão update no gridWiew, pq no grid eu mostro informações de algumas colunas da minha tabela, por exempo ( versao, Modificado Por, data, etc..)   Tenho algumas colunas, como CoIn004, CoIn004 que são textos que só são recuperados em outra parte do sistema que não é minha responsabilidade de desenvolver. Porem quando o usuário clicar no botão visualizar as informações são retornadas aos respectivos textboxe, até aí ei consegui fazer.   A agora vamos ao que estou precisando:   Quanto o usuario clicar em atualizar e os txtbox ficarem preenchidos, o usuário fará algumas modificações no codigo que está no txt, logo apos ele clica em salvar e as informações são salvas substituindo as informaçõea antidas no banco, permanecendo a versão e o Id.   Existem um botão salvar novo, esse sim, salva novas informações, criando Id's diferentes e versãos diferendes.   Deu para entender?
Responder

Gostei + 0

29/04/2009

Luiz Maia

Acho que deu sim Lorena,   Vc quer na verdade dar um update no registro que esta em foco em sua base, ne?   Para tanto, vc tera que fazer o seguinte:   No botão Salvar, vc deve verificar se o ID ja existe, por exemplo para cadastro de Estado Civil: No caso de ser uma edição de algum item, guarde o valor deste item numa variavel qualquer e depois passe ela para o metodo abaixo. Se for Inserção, o id sera 0, se for alteração o Id sera maior que 0.   public void Salvar(ref int codigo, string descricao) { if (codigo == 0) { sql = "insert into estado_civil(dsc_estado_civil) values('" + descricao + "')"; cmd.CommandText = sql; acesso.ExecuteQuery(ref cmd); codigo = Convert.ToInt32(acesso.UltimoRegistro("estado_civil", "cod_estado_civil")); } else { sql = "update estado_civil set dsc_estado_civil = '" + descricao + "' where cod_estado_civil = " + codigo.ToString(); cmd.CommandText = sql; acesso.ExecuteQuery(ref cmd); } }   Espero ter ajudado Lorena. Continuo a sua disposição para qualquer duvida. Abraços Att Luiz Maia
Responder

Gostei + 0

29/04/2009

Lorena Menelli

Como faço para guarda o valor do ID em uma variavel? Estou tentando assim, mais não está dando certo. protected void btnexcluir_Click(object sender, EventArgs e) { int Id_cliente = (int)GridView1.DataKeys["id_client"].Values; } Na verdade existem dois botões um Salvar e outro Savar Novo Projeto. O botão salvar está funcionando corretamente, ciando o novo Id. o botão salvar Novo é ativando quando eu clico em visualizar. Isso deve ocorrer pq a algumas colunas do banco são preenchidas escrevendo em um extbox multiline, e quando clico em visualizar no grid, os txtbox multiline são preenchidos com dados de algumas colunas do banco para edição, permitindo a modificação. Nesse momento o botão salvar fica ativado e o botão salvar novo projeto é desativado. Isso tudo eu já fiz. O que tenho que fazer agora é ao clicar no botão Salvar quando estou no modo de visualização, ele atualiza os dados sem criar outro id. Rsumindo: recupera o ID mudo as informações e salvo os dados para esse mesmo ID. Salvar
Responder

Gostei + 0

29/04/2009

Luiz Maia

Quando vc recuperar o ID, jogue ele numa variavel global, ou ate mesmo Sessão, ai depois vc usa ele para verficar se o id existe ou não, ou seja, se é edição ou inserção.
Responder

Gostei + 0

29/04/2009

Lorena Menelli

Poderia escrever essa linha para mim?
Responder

Gostei + 0

29/04/2009

Luiz Maia

Lorena, me mande seu codigo. So assim tenho condição de visualizar o que realemente precisa.
Responder

Gostei + 0

29/04/2009

Lorena Menelli

protected void Button1_Click(object sender, EventArgs e) { SqlConnection connection = new SqlConnection(); try { if (GridView1.SelectedIndex == -1) { const string myName = "Marcello"; try { Random random = new Random();   connection = new SqlConnection(ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString); SqlCommand command = new SqlCommand("INSERT INTO EsEp002F1 ([obsCoIn005],[obsCoIn004],[obsCoOr003F1],[versao],[criado],[criadoPor],[uidProjeto]) VALUES(@obsCoIn005, @obsCoIn004, @obsCoOr003F1,@versao,@criado,@criadoPor,@uidProjeto)", connection); command.Parameters.Add(new SqlParameter("@obsCoIn005", txtCoIn005.Text)); command.Parameters.Add(new SqlParameter("@obsCoIn004", txtCoIn004.Text)); command.Parameters.Add(new SqlParameter("@obsCoOr003F1", txtCoOr003F1.Text)); command.Parameters.Add(new SqlParameter("@versao", random.Next(99999))); command.Parameters.Add(new SqlParameter("@criado", DateTime.Now.ToString("yyyy-MM-dd HH:mm"))); command.Parameters.Add(new SqlParameter("@criadoPor", myName)); command.Parameters.Add(new SqlParameter("@uidProjeto", IdProject)); connection.Open(); command.ExecuteNonQuery(); lblMsg.Text = "Usuário incluido com sucesso!";   RetornaValor(); } catch (Exception ex) { Response.Write("ERRO insert " + ex.Message); } finally { connection.Close(); } } else { connection = new SqlConnection(ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString); SqlDataAdapter dataAdapter = new SqlDataAdapter("SELECT * FROM EsEp002F1 where uidEsEp002F1 = '" + + "'", connection); DataSet dataset = new DataSet(); dataAdapter.Fill(dataset, "EsEp002F1"); GridView1.DataSource = dataset.Tables["EsEp002F1"].Rows[]; GridView1.DataKeyNames = new string[] { "uidEsEp002F1" }; GridView1.DataBind(); }
Responder

Gostei + 0

29/04/2009

Luiz Maia

Lorena,   Ficaria mais ou menos assim:   SqlCommand command = new SqlCommand("INSERT INTO EsEp002F1 ([obsCoIn005],[obsCoIn004],[obsCoOr003F1],[versao],[criado],[criadoPor],[uidProjeto]) VALUES(@obsCoIn005, @obsCoIn004, @obsCoOr003F1,@versao,@criado,@criadoPor,@uidProjeto); Select @@identity", connection); command.Parameters.Add(new SqlParameter("@obsCoIn005", txtCoIn005.Text)); command.Parameters.Add(new SqlParameter("@obsCoIn004", txtCoIn004.Text)); command.Parameters.Add(new SqlParameter("@obsCoOr003F1", txtCoOr003F1.Text)); command.Parameters.Add(new SqlParameter("@versao", random.Next(99999))); command.Parameters.Add(new SqlParameter("@criado", DateTime.Now.ToString("yyyy-MM-dd HH:mm"))); command.Parameters.Add(new SqlParameter("@criadoPor", myName)); command.Parameters.Add(new SqlParameter("@uidProjeto", IdProject)); connection.Open(); int IdInserido = Convert.ToInt32("0" + command.ExecuteScalar());   O IdInserido sera o id do registro q acabou de ser inserido, ai vc consegue usa-lo para o que quer. Note o Select @@identity   é isto? Aguardo   Att Luiz Maia
Responder

Gostei + 0

30/04/2009

Lorena Menelli

Luiz, obrigada pela grande ajuda. Meu teste acabou ontem e estou esperando o resultado. Achei que ele exigiram muito para uma vaga de estágio, mais tá bom, vou apreendendo. Pode fechar, abraço e at++
Responder

Gostei + 0

30/04/2009

Luiz Maia

Blz Lorena, boa sorte la. Espero que passe daí podemos te ajudar lá sempre que precisar.   Abraços Att Luiz Maia
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar