Модуль "Календарь" (часть 5) - GetDateBookProps

Рубрика: Исходники
Среда, 21 апреля 2010 г.
Просмотров: 144
последняя версия: 3.0.9 build 961 beta
от 07 декабря 2007 г.
function TfrmAT_DateBook.GetDateBookProps(var ADateBookProps: TDateBookProps): boolean;
var
  str, tmp: string;
begin
  result:= false;
  str:= 'AT+MDBR=?';
  {***} Logger('>> ' + str);
  str:= SendATCommand(str);
  {***} Logger('<< ' + str);  
  //#$D#$A'+MDBR: 500,2,64,8,2'#$D#$A#$D#$A'OK'#$D#$A
  //#$D#$A'+MDBR: 500,1,128,8,3,(0-6),264,(0-16),64,256'#$D#$A#$D#$A'OK'#$D#$A

  if (str = '') or (Pos('ERROR', str) > 0) then exit;
  ExtractStr(str, ': ');
  str:= ExtractStr(str, 'OK');
  str:= Trim(str);
  //500,2,64,8,2
  //500,1,128,8,3,(0-6),264,(0-16),64,256
  ADateBookProps.Count:= StrToInt(ExtractStr(str, ','));
  {***} Logger(Format('DateBookProps.Count: %d',[ADateBookProps.Count]));
  //2,64,8,2
  //1,128,8,3,(0-6),264,(0-16),64,256
  
  ADateBookProps.Used:= StrToInt(ExtractStr(str, ','));
  {***} Logger(Format('DateBookProps.Used: %d',[ADateBookProps.Used]));
  //64,8,2
  //128,8,3,(0-6),264,(0-16),64,256
  
  ADateBookProps.TitleLength:= StrToInt(ExtractStr(str, ','));
  {***} Logger(Format('DateBookProps.TitleLength: %d',[ADateBookProps.TitleLength]));
  //8,2
  //8,3,(0-6),264,(0-16),64,256
  tmp:= ExtractStr(str, ',');
  //2
  //3,(0-6),264,(0-16),64,256
  ADateBookProps.ex_max:= StrToInt(tmp);
  //2....
  //(0-6),264,(0-16),64,256
  if Pos(',', str) > 0
    then begin
           iDateBookType:= 1;
         end  
    else iDateBookType:= 0;
  Logger(Format('Тип ежедневника: %d',[iDateBookType]));
  //ADateBookProps.ex_type_max:= StrToInt(ExtractStr(str, #13));
  result:= true;
end;
Rambler's Top100