raomgluz
unread,Oct 11, 2011, 5:49:04 PM10/11/11Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Comunidad de Visual Foxpro en Español
Trabajo con MySQL Client version 5.1.11 Windows XP; y VFP9:
-- MySQL
--
DROP TABLE IF EXISTS `dbsfis_dbo`.`secuencia`;
CREATE TABLE `dbsfis_dbo`.`secuencia`
( `sec_idsec` char(15) NOT NULL,
`sec_descri` varchar(45) NOT NULL,
`sec_valor` int(10) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`sec_idsec`))
ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Procedimiento almacenado MySQL: newid
--
DELIMITER $$
DROP PROCEDURE IF EXISTS `dbsfis_dbo`.`newid`$$
CREATE DEFINER=`roncoym`@`%`
PROCEDURE `dbsfis_dbo`.`newid`(IN p_idsec CHAR(15), INOUT p_valor
INT)
BEGIN
INSERT INTO secuencia VALUES (p_idsec, p_idsec, 1)
ON DUPLICATE KEY UPDATE sec_valor = sec_valor + 1;
SELECT sec_valor INTO p_valor FROM secuencia WHERE sec_idsec =
p_idsec;
END $$
DELIMITER ;
*
*
* Visual FoxPro
*
FUNCTION cIDPROCESO(tcPrefijoID)
*
* Genera Identificador de doc. proceso logistico.
*
LOCAL lcPrefijoID, lnsec_valor, llError
********************************************************************************************
** Genera Nº Proceso:
lcPrefijoID = tcPrefijoID && Ejemplo '1106M'
lnsec_valor=0
llError = SQLEXEC(oApp.nHandle01, 'call dbsfis_dbo.newid(?
lcprefijoid, ?@lnsec_valor)') < 0
IF llError
IF AERROR(laError) > 0
*-- Let the form's error handler handle the error
thisform.Error(laError[1])
ENDIF
RETURN '' && Devuelve blanco si hay error
ENDIF
*
RETURN (lcPrefijoID + CHRTRAN(STR(lnSec_valor, 4), SPACE(1), '0') +
'1') && '1106M00011'
EL PROBLEMA ES QUE VFP9, NO RECONOCE COMO INSTRUCCION VALIDA A
llError = SQLEXEC(oApp.nHandle01, 'call dbsfis_dbo.newid(?
lcprefijoid, ?@lnsec_valor)') < 0
POR EL PARAMETRO : ?@lnsec_valor
NO SE SI EL PROBLEMA ES DEL MySQL ODBC 5.1 Driver ó LA VERSION DEL
MySQL Client version 5.1.11. SOLICITO APOYO A LA COMUNIDAD VFP.
raomgluz