Имя: Пароль:
1C
1С v8
CreateParameter ADODB 1c8
0 Franchiser
 
гуру
15.07.22
17:18
Хочу создать входящий параметр
Какие значения передать в CreateParameter для числа длиной 15, точностью 2 ?
1 youalex
 
15.07.22
17:46
Литералом добавить - не вариант?
2 Franchiser
 
гуру
15.07.22
17:49
Проблема с decimal:

Params = Команда.Parameters;
    Params.Append(Команда.CreateParameter("p1",мМагияСКЛ.adChar,1,45));   //inv_id
    Params.Append(Команда.CreateParameter("p2",мМагияСКЛ.adChar,1,10)); //CASH_TYPE_NAME
    ПарамCASH_TYPE = Команда.CreateParameter("p3",мМагияСКЛ.adDecimal,1,1);  //???
    ПарамCASH_TYPE.Precision = 1;            //???
    ПарамCASH_TYPE.NumericScale = 0;        //???
    Params.Append(ПарамCASH_TYPE);   //CASH_TYPE
    Params.Append(Команда.CreateParameter("p4",мМагияСКЛ.adChar,1,22));   //CUST_NUM
    Params.Append(Команда.CreateParameter("p5",мМагияСКЛ.adChar,1,20));   //TRANS_NUM
    Params.Append(Команда.CreateParameter("p6",мМагияСКЛ.adDBDate,1));   //CAL_DATE  
    ПарамSum = Команда.CreateParameter("p3",мМагияСКЛ.adDecimal,1,18);     //??????
    ПарамSum.Precision = 15;      //???
    ПарамSum.NumericScale = 2;      //???
    Params.Append(Команда.CreateParameter("p7",ПарамSum));//Sum       //???
3 Franchiser
 
гуру
15.07.22
17:50
по причине:
Произошла исключительная ситуация (ADODB.Parameters): Parameter object is improperly defined. Inconsistent or incomplete information was provided.
4 Franchiser
 
гуру
15.07.22
17:50
Команда.CommandText = "CREATE TABLE #TempTabHD(
    |inv_id CHAR(45),
    |CASH_TYPE_NAME CHAR(10),
    |CASH_TYPE numeric(1,0),
    |CUST_NUM CHAR(22),
    |TRANS_NUM CHAR(20),
    |CAL_DATE DateTime,
    |Sum numeric(15,2))";