Программирование на Атлантисе (VIP, FCOM, ARD), FastReport
Модераторы: m0p3e , edward_K , Модераторы
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 11:09
что делаю не так ?
Код: Выделить всё
const
_cPLANSSCHCopy = 281474976710661;
end;
sql query _SQL_ClearAll = delete from oborot where :_cPLANSSCHCopy = oborot.CPLANSSCH;
Interface inMInterface;
create view
from oborot;
...
cmInit:
sqlExecDirect(_SQL_ClearAll);
Время ведет!
n0where
Местный житель
Сообщения: 499 Зарегистрирован: 30 дек 2010, 08:16
Сообщение
n0where » 01 авг 2012, 11:57
comp?
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 12:00
n0where писал(а): comp?
oborot.CPLANSSCH конечно comp ...
Время ведет!
Irina_
Местный житель
Сообщения: 554 Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев
Сообщение
Irina_ » 01 авг 2012, 12:04
Здравствуйте. А не проще было бы удалить проводки по указанному Вами плану счетов непосредственно из Галактики? Перейти в книгу бухпроводок, перейти на план счетов, по которому надо удалить все проводки, пометить все проводки, F8.
n0where
Местный житель
Сообщения: 499 Зарегистрирован: 30 дек 2010, 08:16
Сообщение
n0where » 01 авг 2012, 12:18
Masygreen писал(а): n0where писал(а): comp?
oborot.CPLANSSCH конечно comp ...
Я имел ввиду это
delete from oborot where oborot.CPLANSSCH = comp(:_cPLANSSCHCopy);
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 12:30
n0where писал(а): Я имел ввиду это
delete from oborot where oborot.CPLANSSCH = comp(:_cPLANSSCHCopy);
ок попробую ... просто не пойму еще как таким функционалом пользоватся
Последний раз редактировалось
Masygreen 01 авг 2012, 12:35, всего редактировалось 1 раз.
Время ведет!
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 12:31
Irina_ писал(а): Здравствуйте. А не проще было бы удалить проводки по указанному Вами плану счетов непосредственно из Галактики? Перейти в книгу бухпроводок, перейти на план счетов, по которому надо удалить все проводки, пометить все проводки, F8.
ирина это ветка
Программирование
Время ведет!
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 12:35
n0where писал(а): Я имел ввиду это
delete from oborot where oborot.CPLANSSCH = comp(:_cPLANSSCHCopy);
нет не работает
Время ведет!
RAJAH
Местный житель
Сообщения: 932 Зарегистрирован: 18 фев 2008, 12:49
Сообщение
RAJAH » 01 авг 2012, 12:50
Masygreen писал(а): n0where писал(а): Я имел ввиду это
delete from oborot where oborot.CPLANSSCH = comp(:_cPLANSSCHCopy);
нет не работает
А, может быть,
# comp?
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 13:38
RAJAH писал(а): delete from oborot where oborot.CPLANSSCH = #comp(:_cPLANSSCHCopy);
А, может быть, # comp?
так тоже нет
Время ведет!
Den
Местный житель
Сообщения: 1844 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:
Сообщение
Den » 01 авг 2012, 13:45
Принципиально через sql query ?
напишите просто в коде вип :
Interface inMInterface;
create view
_cPLANSSCHCopy : comp ;
;
cmInit:{
_cPLANSSCHCopy :=281474976710661;
sql delete from oborot
where oborot.CPLANSSCH= :(_cPLANSSCHCopy)
;
}
end.
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 16:29
Den писал(а): Принципиально через sql query ?
напишите просто в коде вип :
Interface inMInterface;
create view
_cPLANSSCHCopy : comp ;
;
cmInit:{
_cPLANSSCHCopy :=281474976710661;
sql delete from oborot
where oborot.CPLANSSCH= :(_cPLANSSCHCopy)
;
}
end.
это в плане изучения нового функционала .. функции есть надо научится пользоваться ..
Время ведет!
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 17:00
с одним параметром сработало ...
Код: Выделить всё
sql delete from oborot where oborot.CPLANSSCH = :_cPLANSSCHCopy;
пытаюсь добавить второй .. ошибка компиляции
Ошибка: Ожидалась константа, поле, функция, "IF" или "CASE" (стр. 1044, поз. 92)
Код: Выделить всё
sql delete from oborot where oborot.CPLANSSCH = :_cPLANSSCHCopy and Oborot.SchetO = :_sSCH;
Время ведет!
n0where
Местный житель
Сообщения: 499 Зарегистрирован: 30 дек 2010, 08:16
Сообщение
n0where » 01 авг 2012, 17:53
sSQL_stmt := sqlAllocStmt;
sqlExecStmt(sSQL_stmt, 'delete from oborot where oborot.CPLANSSCH = #comp('+_cPLANSSCHCopy+')');
sqlFreeStmt(sSQL_stmt);
Я обычно так делал
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Masygreen
Местный житель
Сообщения: 1089 Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:
Сообщение
Masygreen » 01 авг 2012, 19:38
n0where писал(а): sSQL_stmt := sqlAllocStmt;
sqlExecStmt(sSQL_stmt, 'delete from oborot where oborot.CPLANSSCH = #comp('+_cPLANSSCHCopy+')');
sqlFreeStmt(sSQL_stmt);
Я обычно так делал
как готовить запросы для прямого sql я знаю, как передавать параметры и т.д. и т.п. но посмотри на пример у тебя 3 строчки и определенные переменные, а через sql можно
по идее, как в документации реализовать одной строчкой .. это разница существенная, вот я и хочу так научится
Время ведет!