Foros del Web » Programando para Internet » ASPX (.net) »

Guardar la informacion de un asp en mi BD

Estas en el tema de Guardar la informacion de un asp en mi BD en el foro de ASPX (.net) en Foros del Web. Hola a todos tengo un problema lo que pasa es que al quere guardar la informacion de mi asp en mi tb de mi bd ...
  #1 (permalink)  
Antiguo 23/11/2010, 13:44
 
Fecha de Ingreso: octubre-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Información Guardar la informacion de un asp en mi BD

Hola a todos tengo un problema lo que pasa es que al quere guardar la informacion de mi asp en mi tb de mi bd solo me toma o una u otra y quiero que me guarde todo lo que tengo dentro de un detalle este es mi asp y mi store para guardar de mi sql:

ASP


public partial class Abasto_Opciones_TraspasoAlmacenes : System.Web.UI.Page
{
VetecUtils objUtils;
DataTable objDTDetalle;
Articulo objArticulo;
ArticuloBO objArticuloBO;
//DataTable objDT;

protected void Page_Load(object sender, EventArgs e)
{
objUtils = new VetecUtils();

if (!IsPostBack && !IsCallback){
adeFecha.Date = DateTime.Now;

objDTDetalle = new DataTable();
objDTDetalle.Columns.Add("intPartida", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("intArticulo", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strNombreCorto", Type.GetType("System.String"));
objDTDetalle.Columns.Add("strArticulo", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intAlmacenOrigen", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strAlmacenOrigen", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intSubAlmacenOrigen", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strSubAlmacenOrigen", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intAlmacenDestino", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strAlmacenDestino", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intSubAlmacenDestino", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strSubAlmacenDestino", Type.GetType("System.String"));
objDTDetalle.Columns.Add("dblCantidad", Type.GetType("System.Double"));
Session["detalle"] = objDTDetalle;
}

else
{
objDTDetalle = (DataTable)Session["detalle"];
}
if (objDTDetalle == null)
{

objDTDetalle = new DataTable();
objDTDetalle.Columns.Add("intPartida", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("intArticulo", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strNombreCorto", Type.GetType("System.String"));
objDTDetalle.Columns.Add("strArticulo", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intAlmacenOrigen", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strAlmacenOrigen", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intSubAlmacenOrigen", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strSubAlmacenOrigen", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intAlmacenDestino", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strAlmacenDestino", Type.GetType("System.String"));
objDTDetalle.Columns.Add("intSubAlmacenDestino", Type.GetType("System.Int32"));
objDTDetalle.Columns.Add("strSubAlmacenDestino", Type.GetType("System.String"));
objDTDetalle.Columns.Add("dblCantidad", Type.GetType("System.Double"));
Session["detalle"] = objDTDetalle;
}

}


protected void btnAgregar_ServerClick(object sender, EventArgs e) {

DataRow objDR;
objDR = objDTDetalle.NewRow();

if (btnAgregar.Value == "Actualizar")
{
btnAgregar.Value = " + ";
objDTDetalle.Select("intPartida=" + txtFilaEditar.Text)[0].Delete();
objDR["intPartida"] = txtFilaEditar.Text;
txtFilaEditar.Text = String.Empty;
}
else {
if (objDTDetalle.Compute("MAX(intPartida)+1", "") == System.DBNull.Value)
objDR["intPartida"] = 1;
else
objDR["intPartida"] = objDTDetalle.Compute("MAX(intPartida)+1", "");
}

objDR["intArticulo"] = txtArticulo.Text;
objDR["strNombreCorto"] = txtNombreCorto.Text;
objDR["strArticulo"] = txtDescripcion.Text;
objDR["intAlmacenOrigen"] = txtAlmacenInt.Text;
objDR["strAlmacenOrigen"] = txtAlmacen.Text;
objDR["intSubAlmacenOrigen"] = txtSubAlmacenInt.Text;
objDR["strSubAlmacenOrigen"] = txtSubAlmacen.Text;
objDR["intAlmacenDestino"] = txtAlmacenDestinoInt.Text;
objDR["strAlmacenDestino"] = txtAlmacenDestino.Text;
objDR["intSubAlmacenDestino"] = txtSubAlmacenDestinoInt.Text;
objDR["strSubAlmacenDestino"] = txtSubAlmacenDestino.Text;
objDR["dblCantidad"] = txtCantidad.Text;

objDTDetalle.Rows.Add(objDR);
objUtils.limpiarCampos(this, "txtNombreCorto,txtDescripcion,txtAlmacenInt,txtAl macen,txtSubAlmacenInt,txtSubAlmacen,txtAlmacenDes tinoInt,txtAlmacenDestino,txtSubAlmacenDestinoInt, txtSubAlmacenDestino,txtCantidad");

//ColocarFocoControles();
//txtFoco.Text = "0";

BindTable();

}


private void BindTable()
{
DataView dv;
dv = new DataView(objDTDetalle, "", "intPartida", DataViewRowState.CurrentRows);
ASPxGridView2.DataSource = dv;
ASPxGridView2.DataBind();
Session["detalle"] = objDTDetalle;
}



protected void btnSave_ServerClick(object sender, EventArgs e){
try
{
ArticuloBO objArticuloBO;
//Constructor con la empresa y sucursal actual
objArticuloBO = new ArticuloBO();
objUtils = new VetecUtils();


string strDetalle;
strDetalle = string.Empty;
DataView dv;
dv = new DataView(objDTDetalle, "", "intPartida", DataViewRowState.CurrentRows);

foreach (DataRowView row in dv)
{
if (row.Row.RowState != DataRowState.Deleted)
{
strDetalle = (strDetalle + ("(LISTITEM)(ITEM)"
+ (row["intArticulo"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strNombreCorto"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strArticulo"].ToString() + "(/ITEM)")));
strDetalle = (strDetalle + ("(LISTITEM)(ITEM)"
+ (row["intAlmacenOrigen"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strAlmacenOrigen"].ToString() + "(/ITEM)")));
strDetalle = (strDetalle + ("(LISTITEM)(ITEM)"
+ (row["intSubAlmacenOrigen"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strSubAlmacenOrigen"].ToString() + "(/ITEM)")));
strDetalle = (strDetalle + ("(LISTITEM)(ITEM)"
+ (row["intAlmacenDestino"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strAlmacenDestino"].ToString() + "(/ITEM)")));
strDetalle = (strDetalle + ("(LISTITEM)(ITEM)"
+ (row["intSubAlmacenDestino"].ToString() + "(/ITEM)")));
//strDetalle = (strDetalle + ("(ITEM)"
// + (row["strSubAlmacenDestino"].ToString() + "(/ITEM)")));
strDetalle = (strDetalle + ("(ITEM)"
+ (row["dblCantidad"].ToString() + "(/ITEM)")));

}
}



string strResult = objArticuloBO.TraspasoAlmacen(Int32.Parse(txtAlmac enInt.Text.Trim()), Int32.Parse(txtSubAlmacenInt.Text.Trim()),
Int32.Parse(txtAlmacenDestinoInt.Text.Trim()), Int32.Parse(txtSubAlmacenDestinoInt.Text.Trim()),
Int32.Parse(txtArticulo.Text.Trim()), double.Parse(txtCantidad.Text.Trim()), adeFecha.Text);
//string strResult = objArticuloBO.TraspasoAlmacen(adeFecha.Text);
// se agrego el +strResult
objUtils.mostrarAlerta(this, "El traspaso se registro exitosamente" + strResult);
objUtils.limpiarPagina(this);
objArticuloBO = null;
}

//objUtils.limpiarPagina(this);

catch (Exception ex)
{
objUtils.mostrarError(this, ex.Message);
}
}




protected void btnList_ServerClick(object sender, EventArgs e){
ArticuloBO objArticuloBO;
//Constructor con la empresa y sucursal actual
objArticuloBO = new ArticuloBO();
ASPxGridView1.DataSource = objArticuloBO.ConsultaTraspasoAlmacen(ddlFechaInic ial.Text, ddlFechaFinal.Text);
ASPxGridView1.DataBind();
objArticuloBO = null;

}


protected void btnNew_ServerClick(object sender, EventArgs e)
{

}


}
  #2 (permalink)  
Antiguo 23/11/2010, 13:46
 
Fecha de Ingreso: octubre-2010
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Guardar la informacion de un asp en mi BD

Este es el SQL

ALTER PROCEDURE [dbo].[qryTraspasoAlmacen_App](
@intEmpresa INT,
@intSucursal INT,
@intAlmacenOrigen INT,
@intSubAlmacenOrigen INT,
@intAlmacenDestino INT,
@intSubAlmacenDestino INT,
@intArticulo INT,
@dblCantidad NUMERIC(18,4),
@datFecha DATETIME,
@strUsuario VARCHAR (50),
@strMaquina VARCHAR (50)
)
AS
BEGIN
BEGIN TRY
BEGIN TRANSACTION traspasoEntreAlmacenes
--Se declaran las variables para utilizar en el store procedure
--Que registra los movimientos
DECLARE @intTipoMovimiento INT,
@intMovimiento INT,
@dblCosto NUMERIC(18,2)

SET @intMovimiento = 0
SET @dblCosto = 0
-- DECLARE @strResult VARCHAR(100)
DECLARE @strDetalle VARCHAR(100)

--Se inserta el registro que indica que se hace un traspaso entre almacenes
--en la tabla tbTraspasoEntreAlmacenes
INSERT INTO tbTraspasoAlmacen(intEmpresa,intSucursal,intAlmace nOrigen,intSubAlmacenOrigen,intAlmacenDestino,
intSubAlmacenDestino,intArticulo,dblCantidad,dblCo sto,datFecha)
VALUES(@intEmpresa,@intSucursal,@intAlmacenOrigen, @intSubAlmacenOrigen,@intAlmacenDestino,@intSubAlm acenDestino,
@intArticulo,@dblCantidad,0,@datFecha)


--Ahora se empiezan a generar los registros de los movimientos
--se tienen que generar dos registros un registro de salida para el almacen origen
--y un registro de entrada para el almacen destino
--||
--\/
--Se empieza el registro de salida.
--se obtiene el id del movimiento de salida por traspaso de almacen
SELECT
@intMovimiento = intTipoMovimientoMP
FROM
tbTiposMovimientosMP
WHERE
UPPER(strNombre) LIKE UPPER('%salida%traspaso%alma%')
AND intEmpresa = @intEmpresa

--Si no se encontro el tipo de movimiento de salida por traspaso de almacen
--se manda un error para que no se haga ni un cambio
IF(@intMovimiento IS NULL OR @intMovimiento = 0)
BEGIN
RAISERROR('No se puede efectuar el traspaso de almacenes no se ha dado de alta el tipo de movimiento',16,1)
END
--Se ejecuta el movimiento de salida
EXECUTE qryRegistrosMovimientosMP_App @intEmpresa, @intSucursal, 0, @datFecha, 2,
@intMovimiento, @intAlmacenOrigen, @intSubAlmacenOrigen,
@intArticulo, @dblCantidad, 0, '', '', NULL, @strUsuario, @strMaquina

-- SET @strResult=CAST(IDENT_CURRENT('tbMovimientosMP') AS VARCHAR(12))
SET @strDetalle=CAST(IDENT_CURRENT('tbMovimientosMP') AS VARCHAR(12))

--ahora se ejecutan los movimientos de entrada por traspaso de almacenes
SET @intMovimiento = 0--se resetea el id del movimiento
--se obtiene el movimiento de entrada por traspaso de almacen
SELECT
@intMovimiento = intTipoMovimientoMP
FROM
tbTiposMovimientosMP
WHERE
UPPER(strNombre) LIKE UPPER('%entrada%traspaso%alma%')
AND intEmpresa = @intEmpresa

--Si no se encontro el tipo de movimiento de entrada por traspaso de almacen
--se manda un error para que no se haga ni un cambio
IF(@intMovimiento IS NULL OR @intMovimiento = 0)
BEGIN
RAISERROR('No se puede efectuar el traspaso de almacenes no se ha dado de alta el tipo de movimiento',16,1)
END

--Se ejecuta el movimiento de entrada
EXECUTE qryRegistrosMovimientosMP_App @intEmpresa, @intSucursal, 0, @datFecha, 1,
@intMovimiento, @intAlmacenDestino, @intSubAlmacenDestino,
@intArticulo, @dblCantidad, 0, '', '', NULL, @strUsuario, @strMaquina

-- SET @strResult=@strResult+CAST(IDENT_CURRENT('tbMovimi entosMP') AS VARCHAR(12))
SET @strDetalle=@strDetalle+CAST(IDENT_CURRENT('tbMovi mientosMP') AS VARCHAR(12))
--si lllegamos hasta aca pues se efetuo la operacion sin ni un error entonces
--se aceptan todos los cambios
COMMIT TRANSACTION traspasoEntreAlmacenes
-- SELECT @strResult
SELECT @strDetalle
END TRY
BEGIN CATCH
--COMO HAY ERROR DESHACEMOS TODOS LOS CAMBIOS HECHOS ANTERIORMENTE
ROLLBACK TRANSACTION traspasoEntreAlmacenes
--SE DECLARAN LAS VARIABLES QUE SE UTILIZARAN PARA EL ENVIO DE MENSAJE DE ERROR
DECLARE @msgError NVARCHAR(2000)

--SE ASIGNA EL MENSAJE DE ERROR QUE CONTIENE EL NÚMERO DE ERROR GENERADO
--Y EL MENSAJE DE ERROR QUE SE GENERO
SET @msgError = ' ERROR NUMBER: ' + CAST(ERROR_NUMBER() AS NVARCHAR(1000)) + CHAR(13) +
' ERROR MESSAGE: ' + ERROR_MESSAGE() + ' ALL CHANGES ROLLBACK'
--AHORA LANZAMOS EL MENSAJE DE ERROR PARA INDICAR QUE HUBO UN ERROR
RAISERROR(@msgError,16,1)
RETURN
END CATCH
END

Etiquetas: sql2005, visualstudio.net, aspx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:23.