Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Свойства

СвойствоТипОписаниеПримерВерсия
SuccessSync
ExistsлогическийВозвращает true, если
последняя синхронизация была проведена успешно

Не реализовано в 3.0

-LastErrorстрокаВозвращает текст ошибки синхронизации. Возвращает null, если синхронизация была выполнена без ошибок

Не реализовано в 3.0

 

-LastSyncTimeвремяВозвращает время последней синхронизацииНе реализовано в 3.0-Sizeчисло, целоеВозвращает размер файла базы данных в килобайтахНе реализовано в 3.02.2.2.101

Методы

база данных решения создана
Блок кода
languagec#
Database db = new Database();
if(!db.Exists)
	db.CreateFromModel();

SyncIsActiveЛогическийВозвращает true, при активной синхронизации
МетодОписаниеПараметрыИсключенияПримерВерсия

Sync()

Sync(callback)

Sync(callback, state)

Производит синхронизацию данных с сервером БИТ:Мобайл

callback - имя функции, вызываемой после выполнения синхронизации;

state - объект, передаваемый в функцию обратного вызова в качестве параметра;

Функция обратного вызова: (state),

state - объект, переданный в качестве параметра state;

 

Не реализовано в 3.0

 

-Create(name)Создает новый экземпляр объектаname - полное имя объекта 

Не реализовано в 3.0. Для создания экземпляра необходимо использовать конструктор объекта.

 
Блок кода
languagec#
themeEclipse
public class Catalog.Country : DbEntity
{
	public DbRef Id {get; set;}
	public bool DeletionMark {get;set;}
	public String Code {get;set;}
	public String Name {get;set;}
 
	public Country()
	{
		Id = DbRef.CreateInstance(GetTableName(), Guid.NewGuid());
	}
}
 
public class MyScreen: Screen
{
	void Btn_Click(object sender, EventArgs e)
	{
		Catalog.Country country = new Catalog.Country();
		country.Name = "Russia";
		country.Save();
	}
}
 
-SelectById(name, id)Возвращает экземпляр объекта по идентификатору

name - полное имя сущности ;

id - идентификатор;

 
Database db = new Database();
if(db.SyncIsActive)
	 DConsole.WriteLine("Синхронизация запущена");

SuccessSyncЛогическийВозвращает true, если последняя синхронизация была проведена успешно
Блок кода
languagec#
Database db = new Database();
if(db.SuccessSync)
	 DConsole.WriteLine("Синхронизация выполнена успешно");

LastSyncTimeDateTimeВозвращает время последней синхронизации
Блок кода
languagec#
Database db = new Database();

	 DConsole.WriteLine("Дата последней синхронизации" + db.LastSyncTime.ToString());

LastSyncErrorStringВозвращает текст ошибки синхронизации. Возвращает null, если синхронизация была выполнена без ошибок
Не реализовано в 3.0. Для получения объекта необходимо использовать объект Query
Блок кода
languagec#
themeEclipsepublic class MyScreen: Screen { void Btn_Click(object sender, EventArgs e) { //first we should obtain ref object Query qry
Database db = new 
Query
Database();
if(db.SuccessSync)
	 DConsole.WriteLine("Произошла ошибка синхронизации + db.LastSyncError.ToString());


Методы

МетодОписаниеПараметрыИсключенияПримерВерсия
CreateFromModel()Создает базу данных sqlite на основании файла метаданных решения. Проект решения должен содержать файл метаданных, доступный по имени Model\metadata.xml

Блок кода
languagec#
Database db = new Database();
if(!db.Exists)
	db.CreateFromModel();
qry.Text = "SELECT Id FROM Catalog_Country WHERE Name = @Name"; qry.AddParameter("Name", "Russia"); var rst = qry.Execute(); if(rst.Next()) { var r = rst.GetRef(0); //now we can get the object Catalog.Country obj = (Catalog.Country)r.GetObject(); //play with obj here... } } }  -

Delete(entityRef)

Delete(entityRef, inTran)

Удаляет объект

entityRef - ссылка на объект

inTran - установить false, для удаления сущности в обход транзакции

 
Блок кода
languagec#
themeEclipse
void DeleteCountry(Catalog.Country country)
{
	Database.Delete(country.Id, false);
}
 
3.0.0.0EmptyRef(name)Возвращает пустую ссылку на объект определенного типаname - полное имя объекта; Не реализовано в 3.0.-CreateRef(name, guid)

Создает ссылку на объект определенного типа

Предупреждение

Ответственность за ссылочную целостность ложится на разработчика

name - строка, полное имя объекта;

guid - строка, идентификатор объекта

DBException

  • Некорректный guid

 

Не реализовано в 3.0.

2.3.14.119
AsGuid(guidString)Конвертирует строку к типу GuidguidString - строка с текстом идентификатора; 

Не реализовано в 3.0. Необходимо использовать метод Parse типа Guid

Блок кода
languagec#
themeEclipse
Guid GuidFromString(String id) 
{
	return Guid.Parse(id);
}
 
Guid GetEmptyGuid() 
{
	return Guid.Empty;
}
-
Commit()Сохраняет изменения в БД в рамках транзакции  

Блок кода
languagec#
themeEclipse
public class DB
{
	private static Database db;
 
	public static void Init()
	{
		db = new Database();
		if(!db.Exists)
			db.CreateFromModel();
	}
 
	public static void SaveChanges() 
	{
		db.Commit();
	}
}
-
Rollback()Откатывает изменения в БД в рамках транзакции  

Блок кода
languagec#
themeEclipse
public class DB
{
	public static void DiscardChanges() 
	{
		db.Rollback();
	}
}
-
CreateTable(name, columns[])Создает пользовательскую таблицу

name - имя таблицы, при создании платформа добавит суффикс 'UT_' к имени

columns - массив имен колонок;

 
Блок кода
languagec#
themeEclipse
public class DB
{
	private static Database db;
 
	public static void Init()
	{
		db = new Database();
		if(!db.Exists)
		{
			db.CreateFromModel();
			Database.CreateTable("Filtered_Outlets", new String[] {"Id"});
		}
	}
}
23.30.50.1080
DropTable(name)Удаляет пользовательскую таблицуname - имя таблицы 
Блок кода
languagejsc#
themeEclipse
 functionvoid NextStep(){
	DBDatabase.DeleteTable("Filtered_Outlets");	
	DoAction("Forward");
}
23.30.50.1080
TruncateTable(name)Очищает пользовательскую таблицуname - имя таблицы 
Блок кода
languagejsc#
themeEclipse
functionvoid Refresh(args){
	DBDatabase.TruncateTable("Filtered_Outlets");
	DoRefresh(args);
}}
3.0.0.0

PerformSync(string url, string username, string password, ResultEventHandler<bool> handler, object state)

Синхронизирует данные между мобильным устройством и сервером


Блок кода
languagec#
var db = new Database();
db.PerformSync(@"http://bitmobile1.bt/bitmobileX/synctest/device","sr","sr", OnSyncComplete, "sync complete");

PerformSyncAsync(string url, string username, string password, ResultEventHandler<bool> handler, object state)

Синхронизирует данные между мобильным устройством и сервером в асинхронном режиме

Блок кода
languagec#
var db = new Database();
db.SyncAsync(@"http://bitmobile1.bt/bitmobileX/synctest/device","sr","sr", OnSyncComplete, "sync complete");

PerformFullSync(string url, string username, string password, ResultEventHandler<bool> handler, object state)

Загружает на мобильное устройство все доступные данные

Блок кода
languagec#
var db = new Database();
db.PerformFullSync(@"http://bitmobile1.bt/bitmobileX/synctest/device","sr","sr", OnSyncComplete, "sync complete");

PerformFullSyncAsync(string url, string username, string password, ResultEventHandler<bool> handler, object state)

Загружает на мобильное устройство все доступные данные в асинхронном режиме

Блок кода
languagec#
var db = new Database();
db.PerformFullSyncAsync(@"http://bitmobile1.bt/bitmobileX/synctest/device","sr","sr", OnSyncComplete, "sync complete");
2.3.5.108