Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2011, 17:01   #1
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию ввод массива

что значит
[DCC Error] UnitRashod.pas(50): E2010 Incompatible types: 'Dynamic array' and 'string'
Код:
var
  Date:Array of TDateTime;
Код:
begin
Date:=stringGridRashod.Cells[0,stringgridRashod.RowCount];
end;
TotKtoNado вне форума Ответить с цитированием
Старый 16.06.2011, 17:03   #2
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Код:
SetLength(Date, <длина массива>);
Date[i]:=StrToDateTime(stringGridRashod.Cells[0,stringgridRashod.RowCount]);
Нет невыполнимых задач, всё дело времени...

Последний раз редактировалось D-mon; 16.06.2011 в 17:08.
D-mon вне форума Ответить с цитированием
Старый 17.06.2011, 17:08   #3
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от D-mon Посмотреть сообщение
Код:
SetLength(Date, <длина массива>);
Date[i]:=StrToDateTime(stringGridRashod.Cells[0,stringgridRashod.RowCount]);
а что значит is not a valid date and time
не является допустимой датой и временем
что значит не являеться? У меня же там все правильно.
исправил на
Код:
begin
SetLength(Date, 500);
Date[i]:=StrToDate(stringgridRashod.cells[0,stringgridRashod.rowCount]);
end;
и опять эта же фигня

Последний раз редактировалось TotKtoNado; 17.06.2011 в 17:16. Причина: добавка
TotKtoNado вне форума Ответить с цитированием
Старый 18.06.2011, 03:41   #4
ivannes
Пользователь
 
Аватар для ivannes
 
Регистрация: 16.06.2011
Сообщений: 42
По умолчанию

попробуй в var написать так
Код:
var
date:array[0..n] of TDateTime //где n любое число
Помог? тогда жми на весы
Девушка что оператор мобильной связи, когда денег нет, то она не доступна ©Радио Маяк
ivannes вне форума Ответить с цитированием
Старый 18.06.2011, 09:49   #5
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от ivannes Посмотреть сообщение
попробуй в var написать так
Код:
var
date:array[0..n] of TDateTime //где n любое число
[DCC Error] UnitRashod.pas(47): E2026 Constant expression expected
TotKtoNado вне форума Ответить с цитированием
Старый 18.06.2011, 11:39   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Цитата:
Код:
var
date:array[0..n] of TDateTime //где n любое число
[DCC Error] UnitRashod.pas(47): E2026 Constant expression expected
чтобы подобный код сработал, компилятору надо явно указать, какое N вы хотите использовать.
например, задать N в качестве константы так:
Код:
const N = 300;
var
 DateArr : array[0..N] of TDateTime; //где n любое число
но только к Вашей проблеме это отношения не имеет!

для преобразования даты из строкового представления в собственно форматы ДатаВремя нужно учитывать. какие настройки выставленые в локали Windows (Пуск - Панель управления - Язык и региональные стандарты - .. настройка..)

В принципе, если надо, то в программе на Delphi можно задать свои настройки даты
(посмотрите, например, в сторону ShortDateFormat и иже с ним..)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.06.2011, 17:29   #7
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
чтобы подобный код сработал, компилятору надо явно указать, какое N вы хотите использовать.
например, задать N в качестве константы так:
Код:
const N = 300;
var
 DateArr : array[0..N] of TDateTime; //где n любое число
но только к Вашей проблеме это отношения не имеет!

для преобразования даты из строкового представления в собственно форматы ДатаВремя нужно учитывать. какие настройки выставленые в локали Windows (Пуск - Панель управления - Язык и региональные стандарты - .. настройка..)

В принципе, если надо, то в программе на Delphi можно задать свои настройки даты
(посмотрите, например, в сторону ShortDateFormat и иже с ним..)
DateFormat на всех DateTimePicker стоит dfShort
TotKtoNado вне форума Ответить с цитированием
Старый 18.06.2011, 18:29   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
DateFormat на всех DateTimePicker стоит dfShort
Вы опять не в ту сторону копаете!
Код:
например,
  ShortDateFormat   := 'dd.mm.yyyy';
и посмотрите хэлп по данным ключевым словам
Код:
var DateSeparator: Char;
var ShortDateFormat: string;
var LongDateFormat: string;
почитайте, для чего они нужны..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.06.2011, 19:23   #9
TotKtoNado
юзер
Форумчанин
 
Аватар для TotKtoNado
 
Регистрация: 22.12.2010
Сообщений: 245
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Вы опять не в ту сторону копаете!
Код:
например,
  ShortDateFormat   := 'dd.mm.yyyy';
и посмотрите хэлп по данным ключевым словам
Код:
var DateSeparator: Char;
var ShortDateFormat: string;
var LongDateFormat: string;
почитайте, для чего они нужны..
слушай я кажется понял почему у меня такая ошибка выскакивает.

раньше у меня был такой код
Код:
begin
  Date:=Date;
  StringgridRashod.Cells[stringgridRashod.Col,StringgridRashod.Row]:=DateTostr(DateTimePickerRashod.Date);
а сейчас
Код:
begin
  Data[i]:=DateTimePickerRashod.Date;
  StringgridRashod.Cells[stringgridRashod.Col,StringgridRashod.Row]:=DateToStr(Data[i]);
но опять ошибка выскакивает

Access violation at addres gsgsgs in module gsgsgsg write of addres

Последний раз редактировалось TotKtoNado; 18.06.2011 в 19:47.
TotKtoNado вне форума Ответить с цитированием
Старый 18.06.2011, 19:50   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

да переназовите же Вы наконец свой массив!
Неужели Вы не видите, что не может компилятор разобраться,
когда Вы пишете Date - о чём речь идёт - о вызове системной функции получения даты или об обращении к Вашему массиву!!!
так
Код:
var
  AllDateArray : Array of TDateTime;
или так:
Код:
var
 DatesAA : Array of TDateTime;
или даже так (если уж совсем плохо с фантазией!!!)
Код:
var
 Date111 : Array of TDateTime;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ввод одномерного массива на TASM Alex1991 Помощь студентам 3 29.10.2010 23:52
Ввод элементов массива! d00ker Помощь студентам 2 24.10.2010 13:53
Delphi7. Ввод массива. Olga67_net Помощь студентам 2 11.05.2010 14:45
гибкий ввод массива Ananim-Pbl6ak Паскаль, Turbo Pascal, PascalABC.NET 3 14.05.2009 22:42
C++ Builder 6, ввод массива XyMan Помощь студентам 2 25.04.2009 19:18