X++ 接口常用方法
private str getTkValue(Newtonsoft.Json.Linq.JObject entity, str name)
{
Newtonsoft.Json.Linq.JToken jtk;
jtk = entity.getValue(name);
return jtk==null ? "" :jtk.ToString();
}
private str getTkValue(Newtonsoft.Json.Linq.JObject entity, str name)
{
Newtonsoft.Json.Linq.JToken jtk;
jtk = entity.getValue(name);
return jtk==null ? "" :jtk.ToString();
}
switch(anyType)
{
case Types::String:
return any2Str(value);
break;
case Types::VarString:
return any2Str(value);
break;
case Types::Integer:
return any2Int(value);
break;
case Types::Int64:
return any2Int64(value);
break;
case Types::Enum:
return any2Enum(anyData)
break;
case Types::Real:
return any2Real(value);
break;
case Types::Date:
table.setFieldValue(conPeek(nameCon,j), any2Date(anyData));
break;
case Types::Time:
table.setFieldValue(conPeek(nameCon,j), str2Time(any2Str(anyData)));
break;
case Types::UtcDateTime:
System.DateTime a = anyValue;
TimeOfDay time = 0;
utcdatetime utcData = DateTimeUtil::newDateTime(a.Date,time);
utcData=DateTimeUtil::addHours(utcData,a.Hour);
utcData=DateTimeUtil::addMinutes(utcData,a.Minute);
utcData=DateTimeUtil::addSeconds(utcData,a.Second);
table.setFieldValue(conPeek(nameCon,j), utcData);
break;
case Types::Guid:
table.setFieldValue(conPeek(nameCon,j), any2Guid(anyData));
break;
case Types::Container:
table.setFieldValue(conPeek(nameCon,j), str2con(anyData, ",")); // not validate
break;
default:
Info(strFmt("%1(%2)类型未定义", conPeek(nameCon,j), dictField.baseType()));
break;
}
MenuFunction menuFunction;
menuFunction = new MenuFunction(menuItemDisplayStr(xxx), MenuItemType::Display);
Args args = new Args();
args.record(_task);
args.caller(_caller);
menuFunction.run(args);
cd "C:\Temp\sqlpackage-win7-x64-en-US-15.0.5084.2"
SqlPackage.exe /a:import /sf:C:\Temp\test.bacpac /tsn:. /tdn:AxDB_202308188 /TargetTrustServerCertificate:True /p:CommandTimeout=7200
//kill all conections.
-- Create the sql to kill the active database connections
declare @execSql varchar(1000), @databaseName varchar(100)
-- Set the database name for which to kill the connections
set @databaseName = 'AxDB'
set @execSql = ''
select @execSql = @execSql + 'kill ' + convert(char(10), spid) + ' '
from master.dbo.sysprocesses where db_name(dbid) = @databaseName
and DBID <> 0
and spid <> @@spid exec(@execSql)
GO
-- modified DB name.
ALTER DATABASE AxDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE --单用户模式
ALTER DATABASE AxDB MODIFY NAME = AxDB_Dev240228
ALTER DATABASE AxDB_DEL SET MULTI_USER --多用户模式
导入Bak文件
RESTORE DATABASE [DbTest]
FROM
disk = N'C:\File\bak.bak'
WITH
FILE =1,
REPLACE,
RECOVERY,
STATS=5;
num2str
(
moneyReal,
-1, // Minimum number of characters to output into the string. -1 means infinite number of characters
-1, // Required number of digits to the right of the decimal. -1 means infinite number of digitis
DecimalSeparator::Dot, // 1
ThousandSeparator::Comma // 2
);