Capturar parámetros llamado desde prg SOLUCIONADO

Post Reply
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Capturar parámetros llamado desde prg SOLUCIONADO

Post by leandro »

Buenos días para todos,

El caso es el siguiente:

En el menu de nuestra aplicación, se hace el llamado a un prg desde el menu, de la siguiente manera:

Code: Select all

         @ 15, 10 ADD BUTTON oBtF6 GROUP oGr1 BITMAP "#8095";
               SIZE 62,64 PROMPT "Saldos"+CRLF+;
                             "Iniciales" ACTION ( articulos(1) ) // articulos es el nombre del prg
 


Pero no se como capturar el parametro que viene al momento en que se abre el prg

Code: Select all

//aqui inicia articulos.prg

#include "fivewin.ch"
#include "xbrowse.ch"
#include "report.ch"
#include "Ado.ch"

//Como capturo el parametro que viene desde el menu?

PUBLIC oCnArt
PUBLIC oRsArt

......
 
Espero haberme hecho entender, de antemano gracias
Last edited by leandro on Fri Feb 21, 2020 2:16 pm, edited 1 time in total.
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Capturar parámetros llamado desde prg

Post by karinha »

Code: Select all

#include "fivewin.ch"
#include "xbrowse.ch"
#include "report.ch"
#include "Ado.ch"

FUNCTION Main()  // MENU PRINCIPAL

   // Variables aqui
   /*
   LOCAL
   GLOBAL
   MEMVAR
   PRIVATE
   */

   PUBLIC oCnArt
   PUBLIC oRsArt
   PUBLIC nOpcion


   @ 15, 10 ADD BUTTON oBtF6 GROUP oGr1 BITMAP "#8095";
      SIZE 62,64 PROMPT "Saldos"+CRLF+ "Iniciales" ;
      ACTION ( ARTICULOS( nOpcion := 1 ) ) // articulos es el nombre del prg
 
   ...

RETURN NIL

//aqui inicia articulos.prg

//Como capturo el parametro que viene desde el menu?
// Llame desde el menu cuantas opciones deseas.
FUNCTION ARTICULOS( nOpcion )  // ARTICULO.PRG -> 8 Digitos es mejor.

   IF nOpcion     == 3
   ..

   ELSEIF nOpcion == 2
   ..

   ELSEIF nOpcion == 1

   etc

   ENDIF

RETURN NIL
 
Saludos.
João Santos - São Paulo - Brasil
postinelli
Posts: 128
Joined: Tue Jul 15, 2008 7:12 pm
Location: Argentina

Re: Capturar parámetros llamado desde prg

Post by postinelli »

PCOUNT()
postinelli
Posts: 128
Joined: Tue Jul 15, 2008 7:12 pm
Location: Argentina

Re: Capturar parámetros llamado desde prg

Post by postinelli »

PCOUNT()
Determine the position of the last actual parameter passed
------------------------------------------------------------------------------
Syntax

PCOUNT() --> nLastArgumentPos

Returns

PCOUNT() returns, as an integer numeric value, the position of the last
argument passed. If no arguments are passed, PCOUNT() returns zero.
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: Capturar parámetros llamado desde prg

Post by leandro »

postinelli y karinha, gracias por responder

Pero la función pcount() cuenta los parámetros, pero como _? cual es el array que cuenta?

Gracias
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Capturar parámetros llamado desde prg

Post by cnavarro »

Leandro

Code: Select all

   local aParams := hb_aParams()
 
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Capturar parámetros llamado desde prg

Post by Armando »

Leandro:

A ver si es lo que necesitas?

Code: Select all

// Programa que llama a otro
Date2Txt(P1,P2,P3,P4,P5,P6,P7,P8)
….
….
// Programa llamado
FUNCTION Date2Txt(dFecha,nTipdia,nTipMes,nTipAmo,cSepDia,cSepDM,cSepMA,lZeros)
 
Si observas, es igual que cuando llamas a una función

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Capturar parámetros llamado desde prg

Post by karinha »

// SAMPLES\PARAM.PRG

Code: Select all

#include "FiveWin.ch"

FUNCTION Main()

   TestApars( 'par1', 'par2', '//par3', 'par4', 'par5' )

RETURN NIL

FUNCTION TestApars()

   LOCAL nParamNo
   LOCAL aParams := HB_AParams()

   FOR nParamNo := 1 TO LEN( aParams )

      ? nParamNo, aParams[ nParamNo ]

   NEXT

RETURN NIL

/*
      Result :
      ----------
      1 par1
      2 par2
      3 //par3
      4 par4
      5 par5
*/
 
Saludos.
João Santos - São Paulo - Brasil
User avatar
leandro
Posts: 958
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: Capturar parámetros llamado desde prg

Post by leandro »

Gracias a todos por la respuestas,

finalmente lo pude solucionar de la forma que sugirió Cristobal,

Code: Select all

#include "fivewin.ch"
#include "report.ch"
#include "Ado.ch"
#include "vrd.ch"
#include "dtpicker.ch"
#include "xbrowse.ch"
#include "outlook.ch"
#include "splitter.Ch"

SET DATE BRITISH
SET CENTURY ON
SET EPOCH TO 1920
REQUEST HB_LANG_ES
HB_LANGSELECT( 'ES' )
FW_SetUnicode( .t. )

PUBLIC aParams := hb_aParams()
 
Saludos
LEANDRO ALFONSO
SISTEMAS LYMA - BASE
Bogotá (Colombia)
[ FWH 19.09 ] [ xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613) ] [ Embarcadero C++ 7.30 for Win32 ]
Post Reply