powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Как задать параметр даты в запросе?
22 сообщений из 47, страница 2 из 2
Как задать параметр даты в запросе?
    #38724356
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonlineВарианты типа "найди десять отличий в переменных «а» и «a», или «aдаптеp» и «адаптер»" не рассматриваются по какой причине?
"На зло маме обморожу себе уши"? Мало кто так себя не любит.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724684
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman,

Ну почему же сразу "назло маме". Самый яркий пример - буква «С», которая в одном месте на клавиатуре и для латинницы и для кириллицы. В случае интенсивного использования двух языков при кодировании ошибиться в названии переменной - проще простого.

Но зато можно продолжать назло всем жрать кактус, да.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724689
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonline,

просто Вы с 1С не работали, там такой язык - русифицированный паскаль, а работа с ADO производится по правилам ADO, поэтому программистам 1С приходится по необходимости использовать не только кириллицу, но и латиницу.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724748
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roadster,

Не работал, и, увидев как оно там, очень этому рад.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724756
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonlineНе работал, и, увидев как оно там, очень этому рад.когда узнаете сколько зарабатывает хороший программист 1С, то можете опечалиться :)
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724790
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roadsterсколько зарабатывает хороший программист 1С
А топикстартер считается хорошим программистом по меркам 1С?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724878
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Хороший вот так не пишет:
Код: vbnet
1.
2.
3.
4.
5.
6.
Конн.ConnectionString = "Driver=Firebird/InterBase(r) driver;" +
    "Dbname=127.0.0.1/3050:C:\1cbase\PERCo\SCD17K.FDB;" +  
    "UID=login;" +                                   
    "PWD=pass;" +                               
    "CHARSET=WIN1251;" +                           
    "client=C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll";



Понятно, что автор просто скопипастил откуда-то.
Но настоящий программист 1С написал бы это хотя бы вот так:
Код: sql
1.
2.
3.
4.
5.
6.
Конн.ConnectionString = "Driver=Firebird/InterBase(r) driver;
    |Dbname=127.0.0.1/3050:C:\1cbase\PERCo\SCD17K.FDB;
    |UID=login;
    |PWD=pass;
    |CHARSET=WIN1251;
    |client=C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll";
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38724893
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roadstermiwaonlineНе работал, и, увидев как оно там, очень этому рад.когда узнаете сколько зарабатывает хороший программист 1С, то можете опечалиться :)
Это вряд ли.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725127
Энди Таккер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonlineПринципиальная - либо регулярно переключаться между языками при кодировании, либо - нет. Я, например, даже комментарии на английском пишу чтобы не переключаться.
Как хошь, так и пишешь. Имеется и полностью английский вариант языка. Так что, дело вкуса и стиля.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725588
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WildSeryDimitry Sibiryakov,

Хороший вот так не пишет:
Код: vbnet
1.
2.
3.
4.
5.
6.
Конн.ConnectionString = "Driver=Firebird/InterBase(r) driver;" +
    "Dbname=127.0.0.1/3050:C:\1cbase\PERCo\SCD17K.FDB;" +  
    "UID=login;" +                                   
    "PWD=pass;" +                               
    "CHARSET=WIN1251;" +                           
    "client=C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll";



Понятно, что автор просто скопипастил откуда-то.
Но настоящий программист 1С написал бы это хотя бы вот так:
Код: sql
1.
2.
3.
4.
5.
6.
Конн.ConnectionString = "Driver=Firebird/InterBase(r) driver;
    |Dbname=127.0.0.1/3050:C:\1cbase\PERCo\SCD17K.FDB;
    |UID=login;
    |PWD=pass;
    |CHARSET=WIN1251;
    |client=C:\Program Files\Firebird\Firebird_2_5\WOW64\fbclient.dll";


Я скопипастил VBS код и по быстрому подогнал его под 1с.
В 1с прелесть в том, что легко найти работу рядом с домом и зарплата будет на уровне руководителей подразделений.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725591
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь параметр передать:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
RecordSet = Новый COMОбъект("ADODB.Recordset");
  RecordSet.ActiveConnection = Конн;
  RecordSet.CursorType = 1;
  RecordSet.LockType = 3;
  RecordSet.Parameters.ParamByName("data1").Value = "date '2014-05-05'";
  RecordSet.Parameters.ParamByName("data2").Value = "date '2014-05-10'";
  //Запрос к базе данных на языке SQL запросов
НачальнаяДата = "2014-06-10";    //"ДФ=yyyy-MM-dd"
КонечнаяДата = "2014-06-12";

СтрокаЗапроса = "SELECT ID_STAFF, TABEL_INTERMEDIADATE.STAFF_ID, TABEL_INTERMEDIADATE.DATE_PASS, TABEL_INTERMEDIADATE.TIME_PASS, TABEL_INTERMEDIADATE.TYPE_PASS, TABEL_INTERMEDIADATE.CONFIG_TREE_ID, STAFF.ID_STAFF, STAFF.LAST_NAME, STAFF.FIRST_NAME, STAFF.MIDDLE_NAME
					|FROM TABEL_INTERMEDIADATE
   					|RIGHT OUTER JOIN STAFF ON (TABEL_INTERMEDIADATE.STAFF_ID = STAFF.ID_STAFF)
					|WHERE 
   					|(
      				|(TABEL_INTERMEDIADATE.DATE_PASS BETWEEN ?data1 and ?data2)
   					|)
					|ORDER BY TABEL_INTERMEDIADATE.DATE_PASS DESC, TABEL_INTERMEDIADATE.TIME_PASS";


Ошибка:
автор{Форма.Форма.Форма(43)}: Поле объекта не обнаружено (Parameters)
RecordSet.Parameters.ParamByName("data1").Value = "date '2014-05-05'";
Что я делаю не так?
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725600
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gerthogЧто я делаю не так?надо брать не RecordSet объект, а другой, например Query или Command, а там уже создавать параметры необходимые.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725604
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gerthogЧто я делаю не так?
Практически всё. Так что не заморачивайся на правильности, делай как можешь. 1С уже не
испортишь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725619
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gerthogВ 1с прелесть в том, что легко найти работу рядом с домом и зарплата будет на уровне руководителей подразделений.Не преувеличивай величину доходов 1с-ника или не преуменьшай у руководителей.
Может, конечно, это не руководители подразделений, а какие-нибудь "начальник отдела" из 2 человек.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725779
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
roadstergerthogЧто я делаю не так?надо брать не RecordSet объект, а другой, например Query или Command, а там уже создавать параметры необходимые.
RecordSet это название переменной. Если я тупо заменю RecordSet на Query или Command ничего не поменяется
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725781
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovgerthogЧто я делаю не так?
Практически всё. Так что не заморачивайся на правильности, делай как можешь. 1С уже не
испортишь.

Я пытаюсь делать как могу, но как могу не работает как надо или совсем не работает.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725793
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WildSerygerthogВ 1с прелесть в том, что легко найти работу рядом с домом и зарплата будет на уровне руководителей подразделений.Не преувеличивай величину доходов 1с-ника или не преуменьшай у руководителей.
Может, конечно, это не руководители подразделений, а какие-нибудь "начальник отдела" из 2 человек.
Тогда уж руководители отделов из 5-15 чел)
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725861
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gerthogкак могу не работает как надо или совсем не работает.
Тогда тебе в раздел по 1С, там и научат и покажут.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725863
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал как тут написано http://msdn.microsoft.com/en-us/library/windows/desktop/ms677209(v=vs.85).aspx
Ошибка:
авторМетод объекта не обнаружен (CreateParameter)
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725904
gerthog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
roadstergerthogЧто я делаю не так?надо брать не RecordSet объект, а другой, например Query или Command, а там уже создавать параметры необходимые.
Кажется понял, нужно как то так делать!?
авторКомманда = Новый COMОбъект("ADODB.Command");
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38725954
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я делаю вот так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
	// создание запроса:
	cmd = Новый COMОбъект("ADODB.Command");
	cmd.CommandText = "тут запрос";
	cmd.CommandType = 1;
	cmd.Prepared = True;
	cmd.NamedParameters = True;

	// создание параметра:
	Если ОписаниеТипа = "Булево" Тогда
		ТипПараметра = 131; // Numeric
		Size = -1;
		NumericScale = 0;
		Precision = 1;
	ИначеЕсли ОписаниеТипа = "Строка" Тогда
		ТипПараметра = 129; // Char
		Size = Стр.Размер;
		NumericScale = -1;
		Precision = -1;
	ИначеЕсли ОписаниеТипа = "Число" Тогда
		ТипПараметра = 131; // Numeric
		Size = -1;
		NumericScale = Стр.Точность;
		Precision = Стр.Размер;
	ИначеЕсли ОписаниеТипа = "Дата" Тогда
		ТипПараметра = 129;
		Size = 8;
		NumericScale = -1;
		Precision = -1;
	ИначеЕсли ОписаниеТипа = "ДатаВремя" Тогда
		ТипПараметра = 129;
		Size = 12;
		NumericScale = -1;
		Precision = -1;
	КонецЕсли;
	
	Если Size = -1 Тогда
		Параметр = cmd.CreateParameter(ИмяПараметра, ТипПараметра, 1, , );
	Иначе
		Параметр = cmd.CreateParameter(ИмяПараметра, ТипПараметра, 1, Size, );
	КонецЕсли;
	
	Если NumericScale >= 0 Тогда
		Параметр.NumericScale = NumericScale;
	КонецЕсли;
	Если Precision >= 0 Тогда
		Параметр.Precision = Precision;
	КонецЕсли;
	
	cmd.Parameters.Append(Параметр);


	// затем параметры используются как-то так:
	cmd.Parameters(ИмяПараметра).Value = ЗначениеПараметра;
	cmd.Execute();


Это для MSSQL. Для FB допили сам, тут несложно.
И, пожалуй, перенесу в ветку 1С.
...
Рейтинг: 0 / 0
Как задать параметр даты в запросе?
    #38726265
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gerthogRecordSet это название переменной.нет, это объект.
впрочем ты принцип догнал немного, здесь правильный подход
gerthogКажется понял, нужно как то так делать!?
авторКомманда = Новый COMОбъект("ADODB.Command");
но рекомендую почитать что-то про ООП, откроешь много нового и интересного.

Модератор: Тема перенесена из форума "Firebird, InterBase".
...
Рейтинг: 0 / 0
22 сообщений из 47, страница 2 из 2
Форумы / [игнор отключен] [закрыт для гостей] / Как задать параметр даты в запросе?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]