Pruebalo asi
Código sql:
Ver originalCREATE PROCEDURE insertarPorCargo
(
@CODIGO_CAP VARCHAR(20)
@CODIGO_CARGO VARCHAR(20)
@FECHA DATETIME
@TEMA VARCHAR(40)
@DURACION VARCHAR(10)
@LUGAR VARCHAR(30)
@CODDEPTO VARCHAR(20)
@HORA_INICIO VARCHAR(10)
@HORA_FIN VARCHAR(10)
@TIPO VARCHAR(10)
@RUT_RELATOR VARCHAR(15)
)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @RUT VARCHAR(30) -- SUPONGO QUE EL TIPO ES VARCHAR
DECLARE C1 CURSOR FOR
SELECT RUT FROM EMPLEADO
WHERE CODIGO_CARGO = @CODIGO_CARGO
ORDER BY RUT;
OPEN C1
FETCH NEXT FROM C1 INTO @RUT
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO CAPACITACION VALUES(@CODIGO_CAP, @FECHA, @TEMA, @DURACION, @LUGAR, @CODDEPTO, @HORA_INICIO, @HORA_FIN, @TIPO, @CODIGO_CARGO, @RUT_RELATOR, @RUT)
FETCH NEXT FROM C1 INTO @RUT
END
END