call spMante_Lista_Precios('NEW', NULL, 2, 'mayorista2 EMPR2', 2, 2, 'S', 1, 2, 'I', 2, 1);

DROP PROCEDURE IF EXISTS spMante_Lista_Precios;
CREATE PROCEDURE spMante_Lista_Precios(
	varOpcion   varchar(10),
	varCodigo   int,
  varEmpresa  int,
	varNombre   varchar(80),
  varPeso     double,
  varMinimo   double,
  /* Para Copiar detalle de productos de otra lista */
  varCopyFlg  char(1),
  varCopyEmp  int,
  varCopyLis  int,
  varCopyOpt  char(1),
  varCopyPor  double,
  /* Usuairo que realiza el registro*/
	varUsuario  int
)
BEGIN
  DECLARE varExiste int default 0;
  DECLARE varError  text default 'OK';
	if varOpcion='NEW' then
    -- Buscamos si el nombre del cliente ya se encuentra registrado
    select count(*) INTO varExiste from _sv_lista 
    where TRIM(UPPER(nombre)) = TRIM(UPPER(varNombre)) 
    and _estado = 'A' and id_empresa = varEmpresa;
    
    if varExiste <= 0 then 
      -- Generamos Siguiente Correlativo
      SELECT ifnull(max(id_lista),0)+1 INTO varCodigo FROM _sv_lista where id_empresa = varEmpresa;
      INSERT INTO _sv_lista (id_lista, id_empresa, nombre, peso, monto_minimo, _date_create, _date_update, _user_create, _user_update) 
      values (varCodigo, varEmpresa, upper(varNombre), varPeso, varMinimo, NOW(),NOW(), varUsuario, varUsuario);
      -- Generamos la copia de articulos si se requiere
      if varCopyFlg='S' then
        if varCopyOpt='I' then
 