Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.



Иллюстрированный самоучитель по Delphi 7 для профессионалов

Компонент TClientDataSet. Получение данных от компонента – провайдера.

Размер пакета определяется свойством:

property PacketRecords: Integer;

…которое задает число записей, передаваемое в одном пакете. Если свойство имеет значение -1 (это значение по умолчанию), передаются все записи набора данных. Если оно равно 0 – клиенту передаются только метаданные о наборе данных.

Если соединение клиента с сервером медленное, число записей в пакете можно уменьшить, но желательно так, чтобы при использовании компонентов TDBGrid полученные в одном пакете записи полностью заполняли рабочую область этого компонента.

Одновременно разработчик имеет возможность управлять доставкой следующих пакетов. Для этого используется метод:

function GetNextPacket: Integer;

Например, это можно сделать следующим образом:

procedure TDataModulel.ClientDataSetAfterScroll(DataSet: TDataSet);
begin
if ClientDataSet.EOF then ClientDataSet.GetNextPacket; end;

Свойство:

property FetchOnDemand: Boolean;

…должно иметь значение False. При значении True оно разрешает компоненту получать новые пакеты данных по мере надобности, например, при необходимости прокрутки записей в компоненте TDBGrid.

До и после получения очередного пакета соответственно выполняются обработчики событий:

type
TRemoteEvent = procedure(Sender: TObject;
var OwnerData: OleVariant) of object;
property BeforeGetRecords: TRemoteEvent;
property AfterGetRecords: TRemoteEvent;

Содержимое очередного пакета представлено свойством:

property Data: OleVariant;

Данные в нем хранятся в транспортном формате, готовые для пересылки. Причем его можно использовать не только для чтения, но и для записи, формируя пакет данных для отправки провайдеру:

var OwnerData: OleVariant;
MaxErrors, ErrorCount: Integer;
MaxErrors: = 0;
ResultDataSet.Data: = SourceDataSet.AppServer.AS_ApplyUpdates
('', SourceDataSet.Delta, MaxErrors, ErrorCount, OwnerData);

Метод AS_AppiyUpdates передает данные, содержащиеся в буфере Delta, провайдеру на сервер и возвращает записи, сохранить которые не удалось. Подробнее о методе AS_ApplyUpdates см. табл. 21.1.

Размер буфера Data в байтах возвращает свойство:

property DataSize: Integer;
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.