Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Добрый день. Нет, ли у кого подобного скрипта или примерных наработок? Возможно ли его написать в универсальном стиле для 1С 7.7 и для 8? Логика такова: 1. поиск контрагента по наименованию или ИНН. Если не найден, должен создаваться новый 2. собственно выставление счета (с заполнением всех обязательных полей и полей в нужных связанных таблицах) Все в самом минимальном и простейшем варианте. Может кто-нибудь помочь? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2009, 20:53 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Ну, что неужели ни кто не делал интеграцию 1С с другими системами на таком стандартном языке как VBScript? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2009, 15:42 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
в 1С свой язык есть. ему на остальные покласть... >>Возможно ли его написать в универсальном стиле для 1С 7.7 и для 8? структуры документов разные, да и язык немного, но отличается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2009, 16:00 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Это, если плясать от 1С (в плане интеграции). А, если плясать от другой сторонней системы. Если ее рассматривать как более важную. И нужно из нее выставлять счет в 1С. Всего-то нужно создать правильный объект (CreateObject) и далее вызвать нужный метод (типа "СоздатьСчет") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2009, 20:09 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Если другая система более важная, тогда зачем ей 1С? Задача не понятна в плане организации работы? Почему неньзя просто запустить 1С и выписать там счет? Начните с более общей постановки задачи. Может вам здесь подскажут другой путь её решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2009, 10:42 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Другая система - это CRM. (В ней также управленческий учет, и другие здачи.) Система 1С - это для бухгалтерии. (Две системы работают вместе, но пока без связи.) Нужно, чтобы менеджер нажимал кнопку в CRM, по нажатию которой выполнялся бы скрипт (.vbs файл), выставляющий счет в 1C. Саму систему 1С запускать не обязательно. Просто, чтобы добавлялся в ее БД счет. Все параметры (контрагент, сумма счета, содержимое счета) должны передаваться в .vbs из CRM и далее в 1С. Кто-нибудь проводил интеграцию 1С с другими системами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2009, 12:53 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
добавьте мне vbs скриптом "просто счет" в БД файловой 8-ки не открывая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2009, 12:56 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Я не знаю как в 8-ке. Но в 7-ке еще dbf-таблицы, значит алогритм файла VBscript я вижу такой: 1. Открываем соединение с БД 2. Формируем SQL инструкцию на добавление в нужную таблицу (и все необходимые) 3. Выполняем SQL инструкцию 4. Закрываем конекшн Код примерно такой: Dim Con 'объект Connection Set Con = CreateObject("ADODB.Connection") 'создание объекта Connection Con.Open "Provider=...зедсь правильный провайдер...;Data Source=" & sDbPath & ";Persist Security Info=False" 'открываем соединение с базой данных Dim sSql sSql = "INSERT INTO tblСчета (Number, Amount) VALUES (1, 10000)" Con.Execute sSql 'выполняем SQL инструкцию, которая вставляет данные в таблицу счета Con.Close Для 8-ки, думаю нужно, не через SQL инструкуцию, а через ее объекты: 1. GetObject 2. AddAccount method Кто возьмется все это проработать для меня? Есть спецы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2009, 20:59 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Иван Абрамов, Примерные наработки для 7.7 есть, но делал я их довольно давно - сейчас деталей уже и не помню. Решение требовалось быстро, поэтому об оптимальности строго не судите - решение обладает крупным недостатком: необходимо внести несколько строк в глобальный модуль (ГМ). Были мысли избавиться от этого недостатка, но ... Итак: 1. Необходимо в ГМ добавить следующее: Код: plaintext 1. 2. 3. 4. 5. - это придется вставлять после каждого обновления MD 2. Создать ImportRT.ert: Код: plaintext 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. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. Использовалось это примерно так (код на дельфи, но перевести на vbscript должно быть легко): Код: plaintext 1. 2. 3. 4. Action может иметь 2 значения - SetTit (устанавливает заголовок окна) и AddBill (добавляет счет); sParam представляет собой набор <Имя>=<Строка байтов в hex виде>"|". Т.е. глИмпортизРТ передается примерно такая строка: Action=AddBill|INN=34373134303030303734|Pact=32352D3034|Date=20041218|Serv=313032|Price=450.00|KliName=D1EEF1EDEEE2EEE1EEF0F1EAE0FF20F2EEF0E3EEE2EBFF|KvitNum=373737383939| где INN - ИНН;Pact- № договора;Date - Дата;Serv - Код номенклатуры;Price - Цена;KliName - Наименование клиента; Исполнение этого "танца" требует еще нескольких приседаний - вытаскивание 1С на передний план и еще каких-то. Надеюсь, поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 00:03 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
И кто сказал, что при этом сама 1с не запускается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 03:52 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
VoditelKobyly, Вроде, никто и не говорил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 04:46 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
А как насчет нарушения алгоритма описанного выше? 1. Открываем соединение с БД 2. Формируем SQL инструкцию на добавление в нужную таблицу (и все необходимые) 3. Выполняем SQL инструкцию 4. Закрываем конекшн Это же совершенно разные подходы к решению и соответственно разные затраты на программирование. Причем, на мой взгляд в этом случае затраты превысят достигнутый в результате эффект. Гораздо проще и дешевле делать по принципу запуска 1с и доступом по ОЛЕ. Пример был приведен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 05:58 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Только тут опять появиться проблема. Старт 1С довольно затратен, соответственно после нажатия кнопки "Создать счет в 1С" пройдет довольно много времени. Если же чел нажмет кнопку 2 раза - то будут запускаться 2 экземпляра 1С. Ресурсов это будет жрать немерянно. Кроме того, в vbs нужно будет передавать кучу параметров. На мой взгляд, гораздо лучше разделить эту задачу на 2: сначала из CRM выгрузить в XML, а потом бухгалтер в 1С подгрузит эти данные. Я думаю, что создать подобную обработку с одной кнопкой "Подгрузить счета" не составит труда. Таким образом появится полный контроль над загрузкой. В приниципе, можно вообще это автоматизировать, то есть счета будут подгружаться по таймеру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 09:50 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
ппц... наймите 1С-ника нормального. Он вам все сделает через OLE/COM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 10:18 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Иван АбрамовДобрый день. Нет, ли у кого подобного скрипта или примерных наработок? Возможно ли его написать в универсальном стиле для 1С 7.7 и для 8? Логика такова: 1. поиск контрагента по наименованию или ИНН. Если не найден, должен создаваться новый 2. собственно выставление счета (с заполнением всех обязательных полей и полей в нужных связанных таблицах) Все в самом минимальном и простейшем варианте. Может кто-нибудь помочь? Заранее спасибо. http://www.sql.ru/forum/actualsearch.aspx?search=ComConnector&sin=0&a=&ma=0&bid=63&dt=-1&s=1&so=1 ЗЫ лезть руками в таблицы 1С на вставку/апдейт лучше не надо. (только на выборку-безопасно). По крайней - пока не съели всех 1С-овских собак. Поэтому, поначалу, лучше писать через ком- коннектор в 8-ке, и через 1С-аппликуху в 7-ке. Методы и структуры данных отличаются не только меж 7-кой и 8-кой, но и внутри веток (по версиям платформ) - различия во встроенном языке (появляются некоторые новые ф-ии) и между кофигурациями (различия в собсвенно наборе объектов, и перемещение ф-й по глобальным модулям). Правда если данных много - то появится следующее обстоятельство для гордости - обработки будут писаться и отлаживаться быстрее, чем отрабатывать на полном наборе данных. Т.е. порядка на 3 (4-5) медленнее, чем это реально необходимо через работу напрямую с данными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 10:51 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
А ещё есть куча проблем с синхронизацией данных в разных базах, когда например, один и тотже контрагент может сначала появится со стороны бухгалтерии (например оказывает какие-то услуги), а потом со стороны нормальной системы учета. Будем плодить на автомате двойников? А как насчет правильности и достаточности всех реквизитов контрагента в нормальной системе учета и бухгалтерской программы? Учеты ведутся в одних и тех же разрезах? Есть много вопросов, которые надо изучить, поэтому лучший выход - наймите кого-нибудь, кто вам сделает и доведет все до ума. Некоторые вопросы могут даже не сразу и вылезти, а уж об универсальных скриптах вообще вряд ли приходится говорить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2009, 10:53 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Спасибо всем. Но я думал просто вставить запись(и) в нужные таблицы dbf. Без объектов и использования языка 1С (а используя VBScript). То есть именно так: Dim Con 'объект Connection Set Con = CreateObject("ADODB.Connection") 'создание объекта Connection Con.Open "Provider=...зедсь правильный провайдер...;" 'открываем соединение с БД 1С Con.Execute "INSERT INTO tblСчета (Number, Amount) VALUES (1, 10000)" 'выполняем SQL инструкцию, которая вставляет данные в таблицу счета ... + все другие необходимые INSERT-ы и UPDATE-ы Con.Close Set Con = Nothing Неужели никто и никогда не делал подобных задач? И никто никогда не управлял 1С из вне? И никто никогда не лазил в БД 1С за какими-нибудь данными? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2009, 15:15 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
когда за вами будут бегать бухи с намереньем вырвать кадык за разрушенную базу - вспомните эту ветку... "интеграторы" мля... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2009, 20:41 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Именно потому что уже делали подобные вещи, вам и советуют не связываться с таким подходом. Лично мое мнение, что при таком подходе много временных затрат на программирование, а результат всего лишь один документ в бухгалтерской программе. Ваш директор не даст денег финансировать такие проекты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2009, 03:52 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Сейчас многие нормальные системы обладают связью с 1С. Вот пример http://www.crmpartner.ru/faq/beforebuy/3/#1 Моменты по рассинхронизации данных - это оффтоп. Спецы, блин... сидящие только в своем огороде. Я сам есть директор, и деньги на эту задачу выделяю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2009, 23:27 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Если проблемы в деньгах нет, тогда не понятно почему в Санкт Петербурге нельзя найти спеца, способного решить данную проблему. Скорее всего плохо искали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 04:46 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Иван Абрамов, по вашей ссылке http://www.crmpartner.ru/faq/beforebuy/3/#1 не поленился скачал демо версию продукта и вот, что там написано в справке по интеграции с 1С: В комплект поставки Quick Sales включено несколько наборов обработок для интеграции со следующими конфигурациями «1С:Предприятие» 7.7: · Конфигурация «Бухгалтерия», редакция 4.4. · Конфигурация «Бухгалтерия», редакция 4.5. · Конфигурация «Производство + Услуги + Бухгалтерия» 2.8 · Конфигурация «Торговля+Склад», редакция 9.2. · Комплексная конфигурация (Бухгалтерия + Торговля + Склад + Зарплата + Кадры), редакция 4.4. · Комплексная конфигурация (Бухгалтерия + Торговля + Склад + Зарплата + Кадры), редакция 4.5. Обработки: · ИмпортНоменклатуры.ert – операция импорта номенклатуры в Quick Sales · ЭкспортНоменклатуры.ert – операция экспорта номенклатуры из Quick Sales · ИмпортКА.ert – операция импорта контрагентов в Quick Sales · ЭкспортКА.ert – операция экспорта контрагентов из Quick Sales · Документы.ert – работа с документами · ИмпортДокументов.ert – импорт документов · Платежи.ert – импорт платежей 5. Во время выполнения обращения к конфигурации «1С:Предприятие» выводится форма, сообщающая, что в данный момент делает Quick Sales, например, загрузка «1С:Предприятия». Чтобы воспользоваться интеграцией Quick Sales c «1С:Предприятие» 7.7, необходимо запускать 1С, используя Quick Sales. 1С загрузится автоматически при выполнении любой из операций интеграции. Также имеется возможность запустить 1С непосредственно из пункта меню – Настройки, Интеграция 1С, Запустить 1С. То есть люди не пишут напрямую в таблицы 1С, а используют саму 1С для доступа к своей CRM программе. А это уже совершенно другая история. И на мой взгляд эти люди поступают более грамотно. Не знают внутренних структур таблиц 1С и не собираются изучать их, а пользуюся тем, что знают структуры своих таблиц. При этом время на разработку интеграции минимально. И уж ни о какой универсальности (7-ка и 8-ка) не говорят, а чётко называют продукты, с которыми они интергрированы. Потому что на свете конфигураций 1С уже очень много и каждая имеет разные внутренние структуры таблиц, хотя для пользователя это всё может выглядеть как один документ с названием Счет. А вот записи во внутренние таблицы этот документ может делать всякие разные, в зависимости от конфигурации. Я вам предлагаю ещё раз попробовать оценить все достоинства и недостатки разных методов интеграции вашей системы с используемой программой 1С и только потом настаивать именно на прямой записи в таблицы 1С. Выносите свои критерии на обсуждение - коллективный разум поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 06:49 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Иван АбрамовСейчас многие нормальные системы обладают связью с 1С. Вот пример http://www.crmpartner.ru/faq/beforebuy/3/#1 Моменты по рассинхронизации данных - это оффтоп. Спецы, блин... сидящие только в своем огороде. Я сам есть директор, и деньги на эту задачу выделяю. я куею с такого директора если честно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 09:45 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
ссылки дает какие-то... сам открывал их, читал что внутри? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 09:45 |
|
||
|
Как на VBScript выставить счет в 1С?
|
|||
|---|---|---|---|
|
#18+
Давайте всё-таки не оскорблять уважаемого директора. Он не виноват в том, что 1С его "достала" и он хочет сделать интеграцию своего "более важного" продукта с недалёкой системой и даже не системой, а так программкой. Вот только не знает как это сделать, поэтому и просит помощи, совета. Если человек ещё не определился (или не понял, почему не желательно лезть напрямую) в таблицы программ 1С, давайте ему поможем. Свое видение я уже частично изложил: 1. невозможно сделать что-то универсальное для большого разнообразия программ написанных на языке 1С. Потому что всегда найдется программист, который уже побывал в организации использующей 1С и настроил программу под нужды организации. И не исключено, что настроил не только в рамках таблиц 1С, но и возможно в других таблицах, например во внешних, хранящих историю изменения документов. А поэтому вытекает 2. всегда будут добавляться затраты на изучение конкретной конфигурации и дописки под неё, чтобы не изломать, то что уже работает и сделано кем-то до вас. И не факт, что ваши заказчики будут рады заплатить вам за это. А по скольку найти спеца, который одновременно знает несколько систем, всегда тяжелее, чем, знающего одну, и стоит он обычно дороже пересмотрите задание, или хотя бы сузьте рамки. Хотя если уважаемого директора распирает от избытка денег и он готов за это платить, то я думаю обязательно найдутся люди кто возьмется за эту задачу. Весь вопрос сколько. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2009, 10:50 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=35849939&tid=1523873]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 282ms |

| 0 / 0 |
