click derecho sobre w_rep > inherit from > guarda la ventana en la capa presentación w_rep_"nombre"
crea un nuevo datawindow > tabular > SQL Select > selecciona las tablas y las columnas deseadas y en la pestaña desing > convert to sintax (se copia para crear el SP en el SQL)
En el SQL BD creada > programability > Stored procedures click derecho new stored procedure
*********************************************************************************************************************
-- =============================================
-- Author: XXXXXXX
-- Create date: 00-0-0000
-- Description: Reporte de empleados
-- =============================================
CREATE PROCEDURE sp_rep_empleados
AS
BEGIN
SELECT E.EmployeeID,
E.LastName,
E.FirstName,
E.BirthDate
FROM Employees E
END
GO
*********************************************************************************************************************
Valida con SQL parse y luego execute
En el power builder verifica si existe el SP creado
Database > OLE Microsoft OLE DB > Procedures & Functions
File > New > Datawindow > Tabular > Stored Procedure > seleccion a el stored procedure
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SP CON PARAMETROS
Como crear un SP a partir de un SP ya hecho
Buscar el SP
click derecho
script store procedure as
drop and create to
new querry editor window
copiar el nombre
ctrl h para buscar y reemplazar con el titulo nuevo
*********************************************************************************************************************
ALTER PROCEDURE [dbo].[sp_rep_empleados_filtro] --sp_rep_empleados_filtro 'Nancy'
@name varchar(10)
AS
BEGIN
SELECT E.EmployeeID,
E.LastName,
E.FirstName,
E.BirthDate
FROM Employees E
WHERE
E.FirstName like '%' + @name + '%'
END
*********************************************************************************************************************
File > New > Datawindow > Tabular > Stored Procedure > seleccion a el stored procedure
le tira una nueva ventana que le pide el parametro del SP le da cancelar
en el boton filtrar en el evento clicked se escribe
*********************************************************************************************************************
string ls_filtro
ls_filtro = trim(sle_1.text)
if (isnull(ls_filtro) or (len(ls_filtro)=0) then
messagebox("Error", "El filtro no puede ir vacio!!",stopsign!)
return
end if
//Conecto
if f_conectar(SQLCA) then
//establecer el objeto transaccional
this.setTransObject(SQLCA)
// recuperar los datos
dw_1.retrieve(ls_filtro)
//Desconecto
f_desconectar(SQLCA)
*********************************************************************************************************************
en w_rep_XXX_sp_filtro en el constructor se ingresa una letra y da click derecho Extend ancestor y el codigo del constructor
this.Modify ( "DataWindow.Print.Preview = True")
h