Mám uloženou poceduru v MSSQL
@Ident INT OUT, -- ID
@Sklad NVARCHAR(30), -- @DruhPohybu TINYINT,
@RadaDokladu NVARCHAR(3),
@Insert BIT = 1, -- 1: Insertem / 0: Selectem
@IDPosta INT = NULL,
@Mena NVARCHAR(3) = NULL, -- je-li NULL, dotahne se dle rady, nebo hlavni mena
@CisloOrg INT = NULL, -- je-li NULL, dotahne se z posty
@PC INT = NULL, -- poradove cislo, je-li NULL, dotahne se prvni volne
@DatumPorizeni DATETIME = NULL -- je-li NULL, dotahne se z posty, nebo GetDate
AS
SET NOCOUNT ON
DECLARE @PosledniPC INT
DECLARE @Ukod INT
DECLARE @IDDruhDokZbo INT
DECLARE @IDDanRezim INT
DECLARE @RealizacniFak BIT
DECLARE @JeToZaloha BIT
DECLARE @TiskovyForm INT
DECLARE @VstupniCena TINYINT
DECLARE @ZdrojCisKV TINYINT
DECLARE @ZaoFak SMALLINT
IF @IDPosta IS NOT NULL
SELECT
@CisloOrg = ISNULL(@CisloOrg, CisOrg),
@DatumPorizeni = ISNULL(@DatumPorizeni, Datum),
@Poznamka = Poznamka
TAto procedura není komplerní.
Ale jde mi o toto:
//Inicializace procedury MSSQL
$procedura_nazev = "dbo.InsertDat";
$procedura = mssql_init(".$procedura_nazev.");
//proměnné do procedury
$id_procedura=0;
$sklad=$IDSklad;
$druhPohybu=$DruhDokladu_exped;
$radaDokladu=$radadokladu;
$insert=$insert_select;
mssql_bind($procedura, "@Ident", $id_procedura, SQLINT4, true, false);
mssql_bind($procedura, "@Sklad", $sklad, SQLVARCHAR, false, false);
mssql_bind($procedura, "@DruhPohybu", $DruhPohybuZbo, SQLINT4, false, false);
mssql_bind($procedura, "@RadaDokladu", $radaDokladu, SQLINT4, false, false);
mssql_bind($procedura, "@Insert", $insert, SQLBIT, false, false); // !!!
mssql_bind($procedura, "@Mena", $mena, SQLVARCHAR, false, true);
$vydledek_procedury = mssql_execute ($procedura);
Takto spustím celou proceduru v php. Ale jak mám dostat do procedury pomocné proměnné
DECLARE @PosledniPC INT
mssql_bind($procedura, "@PosledniPC", $PosledniPC, SQLINT4, false, true);
Když dám mssql_bind tak při spuštění skriptu hlásí příliš mnoho parametrů.
Prosím pomozte. Děkuji