Zdravím dámy a pánové, řeším tady drobný problém. Potřebuji přes PHP přes uloženou proceduru, která je v MSSQL DB uložit nějaká data do MSSQL DB. Ale někde dělám chybu. Prosím řekněte mi kde?
//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);
mssql_bind($procedura, "@FormaUhrady", $FormaUhrady, SQLVARCHAR, false, true);
mssql_bind($procedura, "@FormaDopravy", $FormaDopravy, SQLVARCHAR, false, true);
mssql_bind($procedura, "@Poznamka", $Poznamka, SQLVARCHAR, false, true);
mssql_bind($procedura, "@Kurz", $Kurz, SQLINT4, false, false);
mssql_bind($procedura, "@ZemeDPH", $ZemeDPH, SQLVARCHAR, false, true);
$vydledek_procedury = mssql_execute ($procedura);
uložená procedura vypadá takto:
@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
Proceduru nevkládám úplnou.
Mockrát děkuji za vaše poznatky...