ALTER PROCEDURE [dbo].[sp_proDetalle_Etapas]
(@idop    BIGINT       = 0, 
 @Codbus  VARCHAR(200) = 0 
)

AS

Declare @Periodo INT = (SELECT periodo FROM proParametros)

     IF @idop = 0
         BEGIN
             SELECT proReceta.codReceta, 
                    proReceta.nomReceta, 
                    proReceta.codArticulo, 
                    proEtapas.codEtapa, 
                    proEtapas.nomEtapa, 
                    CONVERT(VARCHAR, proEtapas.codEtapa) + ' - ' + proEtapas.nomEtapa AS descetapa, 
                    proRecetaEtapas.factor, 
                    proEtapas.unidadA1 AS unialt, 
                    0 AS merma,
                    convert(varchar,proReceta.codReceta) + '-' + proReceta.nomReceta AS Expr2,
                    proReceta.periodo,
					Comentario
             FROM proReceta
                  INNER JOIN proRecetaEtapas ON proReceta.codReceta = proRecetaEtapas.codReceta 
                  AND proReceta.codArticulo = proRecetaEtapas.codArticulo AND proReceta.periodo = proRecetaEtapas.periodo
                  INNER JOIN proEtapas ON proRecetaEtapas.codEtapa = proEtapas.codEtapa AND proEtapas.periodo=proRecetaEtapas.periodo
             WHERE(proReceta.codArticulo = @codbus)
                  AND (proReceta.predeterminada = 1)
                  AND (proReceta.periodo = @Periodo)
             ORDER BY proReceta.predeterminada DESC;
     END;
         ELSE
         BEGIN
             SELECT proOPEtapas.idOp, 
                    proOPEtapas.idsubOP, 
                    proOPEtapas.linea, 
                    proOPEtapas.lineapre, 
                    proOPEtapas.etapa, 
                    proOPEtapas.tipo, 
                    proOPEtapas.inicio, 
                    proOPEtapas.termino, 
                    proOPEtapas.maquina, 
                    proOPEtapas.cantTotal, 
                    proOPEtapas.cantProceso, 
                    proOPEtapas.cantAlt, 
                    proOPEtapas.formula, 
                    proOPEtapas.duracion, 
                    proOP.codbus, 
                    proOP.fecha_ingreso, 
                    proOP.tipoOP, 
                    proOPEtapas.factor, 
                    proOPEtapas.unialt, 
                    proOPEtapas.merma,
                     convert(varchar,proReceta.codReceta) + '-' + proReceta.nomReceta AS Expr2,
                    proOPEtapas.periodo,
					CASE ISNULL(proOPEtapas.Comentario,'')
					WHEN '' THEN proRecetaEtapas.Comentario
					ELSE proOPEtapas.Comentario END AS Comentario
             FROM proRecetaEtapas
                  INNER JOIN proReceta ON proRecetaEtapas.codReceta   = proReceta.codReceta
                                      AND proRecetaEtapas.codArticulo = proReceta.codArticulo
                                      AND proRecetaEtapas.Periodo     = proReceta.Periodo
                  INNER JOIN proOPEtapas ON proOPEtapas.periodo= proRecetaEtapas.periodo
                  INNER JOIN proOP ON  proOPEtapas.idOp = proOP.idOP   
                                  AND proRecetaEtapas.codEtapa = proOPEtapas.etapa
                                  AND proRecetaEtapas.codArticulo = proOP.codbus
                                  AND proRecetaEtapas.codReceta = proOPEtapas.formula
             WHERE proOPEtapas.idop = @idop
                   AND proOP.codbus = @Codbus;
     END;