|
Работа с документом в 1С и документом Excel 🠗 (длинная ветка 27.02.2014 08:22) | ☑ | ||
---|---|---|---|---|
0
kotokent
21.02.14
✎
06:58
|
1. В обработку добавить реквизит "Корректированить". (Булево). Если реквизит имеет значение ЛОЖЬ, то обработка работает в том режиме, который есть сейчас.
Если имеет значение ИСТИНА, то алгоритм работы следующий: По каждому магазину анализируются строки документа "План магазина" и документа Excel. Если есть расхожддения по количеству строк или по значению в колонках, то обработка автоматически создает новый документ "План магазина". Старый при этом полностью блокируется для редактирования и устанавливаются в нем признаки "Откорректирован" и "Документ корректировка" 2. В документа "План магазина" добавить реквизиты: а). Откорректирован (булево) б). Документ корректировка (ссылка на документ "План магазина". |
|||
1
kotokent
21.02.14
✎
06:59
|
начнем с начала, как "По каждому магазину анализируются строки документа "План магазина" и документа Excel"?
|
|||
2
Godofsin
21.02.14
✎
07:00
|
Что это? контрольная работа?
|
|||
3
kotokent
21.02.14
✎
07:00
|
(2) задание
|
|||
4
огурец
21.02.14
✎
07:01
|
(2) Скорее ТЗ, с сайта для фрилансеров.
|
|||
5
Godofsin
21.02.14
✎
07:02
|
(3) От нас что хочешь? Чтоб за тебя сделали?
|
|||
6
kotokent
21.02.14
✎
07:03
|
(5) хочу чтобы подсказали, как делать, пример команд или еще что то?
|
|||
7
огурец
21.02.14
✎
07:03
|
(1) Берешь строки из документа и строки из Exel, сопоставляешь по неким полям, выводишь расхождени по другим полям. выводишь сообщение если для строки екселя или для строки документа не нашлось пары.
|
|||
8
kotokent
21.02.14
✎
07:04
|
(7) это понятно, как их сопоставить, вот в чем вопрос?
|
|||
9
Wobland
21.02.14
✎
07:05
|
запросом - вот в чём ответ
|
|||
10
kotokent
21.02.14
✎
07:07
|
(9) я еще не работал вместе с Excel и документами 1С
|
|||
11
kotokent
21.02.14
✎
07:07
|
(9) так что незнаю
|
|||
12
Godofsin
21.02.14
✎
07:10
|
(10) Читай:
http://www.sky1c.ru/node/248 |
|||
13
огурец
21.02.14
✎
07:12
|
(8)
Давай разобьем задачу на два этапа. 1. Считать данные из Документа и Exel в таблицы значений. 2. Сопоставить две ТЗ. Какой именно этап у тебя вызывает сложности? |
|||
14
kotokent
21.02.14
✎
07:14
|
(13) если честно то оба
|
|||
15
kotokent
21.02.14
✎
07:14
|
(13) я даже не представляю как
|
|||
16
Wobland
21.02.14
✎
07:16
|
разбей теперь каждый этап на два. это называется методом дихотомии
|
|||
17
kotokent
21.02.14
✎
07:20
|
(16) Пока НЕ RecordSet.EOF() Цикл
НомерСтроки = НомерСтроки+1; Если НомерСтроки<НачальнаяСтрока Тогда RecordSet.MoveNext(); Иначе //Дальше обрабатываем RecordSet НоваяСтрока = ТаблицаЗначений.Добавить(); НоваяСтрока.Номер = НомерСтроки; НоваяСтрока.Магазин = Строка(RecordSet.Fields(0).Value); НоваяСтрока.Бонусы = Строка(RecordSet.Fields(1).Value); НоваяСтрока.План = RecordSet.Fields(2).Value; НоваяСтрока.ПланСтар = Строка(RecordSet.Fields(3).Value); НоваяСтрока.ПроданоЗаМесяц = Строка(RecordSet.Fields(4).Value); НоваяСтрока.ПрогнозВыполненияПроц = Строка(RecordSet.Fields(5).Value); НоваяСтрока.ПрогнозВыполненияЕд = Строка(RecordSet.Fields(6).Value); НоваяСтрока.НеобходимыеЕжедневныеПродажи = Строка(RecordSet.Fields(7).Value); НоваяСтрока.ПотенциальныеВзысканияПремии = Строка(RecordSet.Fields(8).Value); RecordSet.MoveNext(); КонецЕсли; КонецЦикла; |
|||
18
kotokent
21.02.14
✎
07:21
|
(16) это то? считывает данные из Exel
|
|||
19
огурец
21.02.14
✎
07:22
|
(14)
Вот пример чтения данных из файла: Есть код для поиска строк в другой тз Отбор = Новый Структура(); Отбор.Вставить("ИнвНом",ИнвНом); Строки = ТабличноеПоле1.НайтиСтроки(Отбор); Если Строки.Количество() = 1 Тогда КодОКОФ = Строки[0].КодОКОФ; По хорошему конечно надо ТЗ запрососм сравнивать. но там надо код ручками писать. Процедура ЧтениеXLSФайла(Элемент) Если ПустаяСтрока(ИмяФайла) Тогда Предупреждение("Для запуска обработки необходимо предварительно выбрать файл Microsoft Excel."); Возврат; КонецЕсли; Попытка // Загрузка Microsoft Excel Состояние("Загрузка Microsoft Excel..."); ExcelПриложение = Новый COMОбъект("Excel.Application"); Исключение Сообщить("Ошибка при загрузке Microsoft Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); Возврат; КонецПопытки; Попытка // Открытие файла Microsoft Excel Состояние("Открытие файла Microsoft Excel..."); ExcelФайл = ExcelПриложение.WorkBooks.Open(ИмяФайла); Исключение Сообщить("Ошибка открытия файла Microsoft Excel." + ИмяФайла + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); КонецПопытки; НомерЛиста=?(НомерЛиста=0,1,НомерЛиста); Попытка // Обработка файла Microsoft Excel Состояние("Обработка файла Microsoft Excel..."); // Читаем данные первого листа книги ExcelЛист = ExcelФайл.Sheets(НомерЛиста); // Определить количество строк и колонок выбранного листа книги Excel xlCellTypeLastCell = 11; ExcelПоследняяСтрока = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Row; ExcelПоследняяКолонка = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Column; Исключение Сообщить("Ошибка открытия листа №1 Microsoft Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); // Закрыть COM соединение для экономии памяти ExcelПриложение.Quit(); КонецПопытки; // Создание описателя типов для таблицы значений //КЧ = Новый КвалификаторыЧисла(15,2); //КС = Новый КвалификаторыСтроки(0); //Массив = Новый Массив; //Массив.Добавить(Тип("Строка")); //ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС); //Массив.Очистить(); //Массив.Добавить(Тип("Число")); //ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ); // Очистить предыдущие значения ТаблицаДокумента.Очистить(); ТаблицаДокумента.Колонки.Очистить(); // Создать колонки табличного документа //ТаблицаДокумента.Колонки.Добавить("Номер",ОписаниеТиповС,"Номер",5); //ТаблицаДокумента.Колонки.Добавить("Артикул",ОписаниеТиповС,"Артикул",11); //ТаблицаДокумента.Колонки.Добавить("Описание",ОписаниеТиповС,"Описание",25); //ТаблицаДокумента.Колонки.Добавить("Цена",ОписаниеТиповЧ,"Цена",6); ТаблицаДокумента.Колонки.Добавить("КрОшибки",,"Крит.Ошибки",15);//-1 ТаблицаДокумента.Колонки.Добавить("Ошибки",,"Ошибки",10);//0 ТаблицаДокумента.Колонки.Добавить("НомерПП",,"Номер п/п",5);//1 ТаблицаДокумента.Колонки.Добавить("Папка",,"Папка",10);//2 ТаблицаДокумента.Колонки.Добавить("СчетУчетаОС",,"Счет учета ОО",10);//2 ТаблицаДокумента.Колонки.Добавить("КБК",,"КБК",10); //3 ТаблицаДокумента.Колонки.Добавить("Наименование",,"Наименование",20);//4 ТаблицаДокумента.Колонки.Добавить("грУчет",,"гр.",2);//5 ТаблицаДокумента.Колонки.Добавить("ИнвНом",,"Инвентарный номер",10);//6 ТаблицаДокумента.Колонки.Добавить("Количество",,"Количество",6); //7 ТаблицаДокумента.Колонки.Добавить("Стоимость",,"Стоиомсть",6); //8 ТаблицаДокумента.Колонки.Добавить("МОЛ",,"МОЛ",10); //9 ТаблицаДокумента.Колонки.Добавить("ДатаПриянятия",,"Дата принятия",6); //10 ТаблицаДокумента.Колонки.Добавить("ДокПриянятия",,"Док принятия",6); //11 ТаблицаДокумента.Колонки.Добавить("НомерДокПриянятия",,"Номер Док принятия",6); //12 ТаблицаДокумента.Колонки.Добавить("ДатаВвода",,"Дата ввода",6); //13 ТаблицаДокумента.Колонки.Добавить("ДокВвода",,"Док ввода",6); //14 ТаблицаДокумента.Колонки.Добавить("НомерДокввода",,"Номер Док ввода",6); //15 ТаблицаДокумента.Колонки.Добавить("КодОКОФ",,"Код окоф",10); //16 ТаблицаДокумента.Колонки.Добавить("СрокИспользования",,"Срок использования",10); //17 ТаблицаДокумента.Колонки.Добавить("СуммаАморт",,"сумма амортиз",10); //18 ТаблицаДокумента.Колонки.Добавить("СпособНачисления",,"Способ начисления",10); //19 ТаблицаДокумента.Колонки.Добавить("СчетАмортизации",,"счет амортизации",10); //20 ТаблицаДокумента.Колонки.Добавить("СчетЗатрат",,"счет затрат",10); //21 ТаблицаДокумента.Колонки.Добавить("ВидИмущества",,"Вид имузества",10); //22 ТаблицаДокумента.Колонки.Добавить("КВД",,"КВД",2); //23 ТаблицаДокумента.Колонки.Добавить("АмортизационнаяГруппа",,"АмортизационнаяГруппа",2); //24 Запрос2= Новый Запрос; Запрос2.Текст = "ВЫБРАТЬ | АмортизационныеГруппыОКОФ.ОКОФ, | АмортизационныеГруппыОКОФ.АмортизационнаяГруппа |ИЗ | РегистрСведений.АмортизационныеГруппыОКОФ КАК АмортизационныеГруппыОКОФ"; Результат2= Запрос2.Выполнить(); Выборка2=Результат2.Выбрать(); ЗапросВИ = Новый Запрос; ЗапросВИ.Текст = "ВЫБРАТЬ | ЕПСБУ.Ссылка КАК Счет, | ВЫБОР | КОГДА ЕПСБУ.Ссылка В ИЕРАРХИИ (&Сч10120) | ТОГДА &Особоценно | ИНАЧЕ ВЫБОР | КОГДА ЕПСБУ.Ссылка В ИЕРАРХИИ (&Сч10130) | ТОГДА &ИноеЦенное | ИНАЧЕ &Недвижимое | КОНЕЦ | КОНЕЦ КАК ВидИм |ИЗ | ПланСчетов.ЕПСБУ КАК ЕПСБУ |ГДЕ | ЕПСБУ.Ссылка В ИЕРАРХИИ(&Сч101)"; ЗапросВИ.УстановитьПараметр("ИноеЦенное", Перечисления.ВидыИмущества.ПрочееДвижимое); ЗапросВИ.УстановитьПараметр("Недвижимое", Перечисления.ВидыИмущества.НедвижимоеИмущество); ЗапросВИ.УстановитьПараметр("Особоценно", Перечисления.ВидыИмущества.ДвижимоеОсобоЦенное); ЗапросВИ.УстановитьПараметр("Сч101", планысчетов.ЕПСБУ.ОС); ЗапросВИ.УстановитьПараметр("Сч10120", планысчетов.ЕПСБУ.ОС_ОЦДИ); ЗапросВИ.УстановитьПараметр("Сч10130", планысчетов.ЕПСБУ.ОС_ИДИ); Результат3 = ЗапросВИ.Выполнить(); ТЗВидыИмущ = Результат3.Выгрузить();; Если ПерваяСтрока=0 тогда ПерваяСтрока=1; КонецЕСли; Выполнять=Истина; ЕстьКритическиеОшибкиВообще=Ложь; Строка =ПерваяСтрока; НомерПП=0; элНом=1; ТекКБК=""; Пока Выполнять Цикл ЕстьОшибки=Ложь; ЕстьКритическиеОшибки=Ложь; ОбработкаПрерыванияПользователя(); СтрокаКарточки=""; ИскатьКарточку=Истина; КолСтрокПоиска=0; Пока ИскатьКарточку Цикл Попытка СтрокаКарточки = СокрЛП(ExcelЛист.Cells(Строка, 3).Value); СтрокаКарточки1 = СокрЛП(ExcelЛист.Cells(Строка, 1).Value); Исключение // Не редко происходит ошибка конвертации отдельной ячейки документа Сообщить("Ошибка чтения строки файла Microsoft Excel." + Строка + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); КонецПопытки; //Сообщить("хххх"+СтрокаКарточки); Если ((Найти(СтрокаКарточки1,"101")<>0) и (не ЗначениеЗаполнено(СтрокаКарточки))) Тогда СчетУчетаОС_Стр = СокрЛП(ExcelЛист.Cells(Строка, 1).Value); НомЗпт= Найти(СчетУчетаОС_Стр,","); МОЛ=СокрЛП(Прав(СчетУчетаОС_Стр,СтрДлина(СчетУчетаОС_Стр)-НомЗпт)); СчетУчетаОС_Стр=Лев(СчетУчетаОС_Стр,НомЗпт-1); //Сообщить("хъх"+СчетУчетаОС_Стр); СчетУчетаОС_Стр_6=ПраВ(Лев(Прав(СчетУчетаОС_Стр,9),6),5); СчетУчетаОС_Стр_6=Лев(СчетУчетаОС_Стр_6,3)+"."+ Прав(СчетУчетаОС_Стр_6,2); СчетУчетаОС=ПоискСчета(СчетУчетаОС_Стр_6,"счет учета",Истина,Ложь); Если не ЗначениеЗаполнено(СчетУчетаОС) Тогда СчетУчетаОС=элСчетУчетаОС; КонецЕсли; СчетАмортизации=УправлениеНефинансовымиАктивами.ОпределитьСчетАмортизацииДляСчетаОС(СчетУчетаОС); СчетЗатрат = Планысчетов.ЕПСБУ.ОбщехозяйственныеРасходы1; Если ДляВсехКБК Тогда КБК=КБКпоУмолчанию; ИНаче КонецЕсли; КВД=Перечисления.КВД.ПустаяСсылка(); КВД_стр=Лев(Прав(СчетУчетаОС_Стр,9),1); Если ЗначениеЗаполнено(КВД_стр) Тогда КВД_Стр=Прав(КВД_стр,1); Если КВД_Стр="1" Тогда //ЧЕтверка //КВД=Перечисления.КВД.Бюджет; КВД=Перечисления.КВД.СубсидииНаГосзадание; ИНачеЕсли КВД_Стр="2" Тогда КВД=Перечисления.КВД.Внебюджет; ИНачеЕсли КВД_Стр="3" Тогда КВД=Перечисления.КВД.ВременноеРаспоряжение; ИНачеЕсли КВД_Стр="4" Тогда КВД=Перечисления.КВД.СубсидииНаГосзадание; ИНачеЕсли КВД_Стр="5" Тогда КВД=Перечисления.КВД.СубсидииНаИныеЦели; ИНачеЕсли КВД_Стр="6" Тогда КВД=Перечисления.КВД.БюджетныеИнвестиции; ИНачеЕсли КВД_Стр="7" Тогда КВД=Перечисления.КВД.СредстваОМС; Иначе КВД=Перечисления.КВД.ПустаяСсылка(); Сообщить("В строке" + Строка +" не удалось понять значение КВД.", СтатусСообщения.ОченьВажное); ЕстьКритическиеОшибки=Истина; ЕстьОшибки=Истина; КонецЕсли;; КонецЕсли; ВидИмущества=Перечисления.ВидыИмущества.НедвижимоеИмущество; Отбор = Новый Структура(); Отбор.Вставить("Счет",СчетУчетаОС); Строки = ТЗВидыИмущ.НайтиСтроки(Отбор); Если Строки.Количество() > 0 Тогда ВидИмущества = Строки[0].ВидИм; КонецЕсли; Если НЕ ЗначениеЗаполнено(ВидИмущества) Тогда Сообщить("В строке" + Строка +" не удалось понять значение строки Вид Имущества, по умолчанию будет назначенно ""иное движимое имущество"".", СтатусСообщения.Внимание); ВидИмущества=Перечисления.ВидыИмущества.ПрочееДвижимое; КонецЕсли; Строка=Строка+1; ИначеЕсли не ЗначениеЗаполнено(СтрокаКарточки) Тогда Строка=Строка+1; Иначе НомерПП=НомерПП+1; ИскатьКарточку=Ложь; КонецЕсли; КолСтрокПоиска=КолСтрокПоиска+1; Если КолСтрокПоиска>20 Тогда ИскатьКарточку=Ложь; КонецЕсли; КонецЦикла; Если не ЗначениеЗаполнено(СтрокаКарточки) ТОгда Выполнять=Ложь; Продолжить; КонецЕсли; // // // Если Строка>100 ТОгда // Выполнять=Ложь; // Продолжить; // КонецЕсли; // // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ///////////////// счета ///////////////////////////////////////////////// // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ///////////////////////// даты ////////////////////////////////////////////// // /////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// ДатаПриянятия_Стр = СокрЛП(ExcelЛист.Cells(Строка, 3).Value); ЕстьНомДок=Найти(ДатаПриянятия_Стр,","); Если ЕстьНомДок>2 Тогда ДатаПриянятия_Стр=Лев(ДатаПриянятия_Стр,ЕстьНомДок-1); ИНачеЕсли ЕстьНомДок=1 ТОгда ДатаПриянятия_Стр=""; КонецЕсли; ДатаПриянятия=ПреобразованиеДаты(ДатаПриянятия_Стр, "ДатаПриянятия",Истина,Ложь); ДатаВвода=ДатаПриянятия; //ДатаВвода_Стр = СокрЛП(ExcelЛист.Cells(Строка+18, 24).Value); //ДатаВвода=ПреобразованиеДаты(ДатаВвода_Стр, "Дата ввода",Истина,Ложь); // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ///////////////////////// числа ////////////////////////////////////////////// // /////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// //грУчет_Стр = СокрЛП(ExcelЛист.Cells(Строка, 5).Value); //грУчет=ПреобразованиеСуммы(грУчет_Стр,"грУчет",0,Ложь,Ложь); грУчет=0; //Количество_Стр = СокрЛП(ExcelЛист.Cells(Строка, 7).Value); //Количество=ПреобразованиеСуммы(Количество_Стр,"Количество",1,Ложь,Ложь); Количество=1; Стоимость_Стр = СокрЛП(ExcelЛист.Cells(Строка, 4).Value); Стоимость=ПреобразованиеСуммы(Стоимость_Стр,"Стоимость",0,Истина,Ложь); СуммаАморт_Стр = СокрЛП(ExcelЛист.Cells(Строка, 5).Value); СуммаАморт=ПреобразованиеСуммы(СуммаАморт_Стр,"СрокИспользования",0,Истина,Ложь); // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ///////////////////////// Строки ////////////////////////////////////////////// // /////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// Наименование = ПроверкаСтроки( СокрЛП(ExcelЛист.Cells(Строка, 2).Value),"Наименование",Истина,Ложь); ИнвНом = СокрЛП(Префикс)+ПроверкаСтроки(СокрЛП(ExcelЛист.Cells(Строка, 1).Value),"ИнвНом",Истина,Ложь); Если ИнвНом=СокрЛП(Префикс) ТОгда ИнвНом2=СокрЛП(Префикс)+"пуст"+СокрЛП(Строка(элНом)); элНом=элНом+1; КонецЕсли; ДокПриянятия = ""; НомерДокПриянятия = ""; ДокВвода = ""; НомерДокввода = ""; // ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ///////////////////////// Элементы базы ////////////////////////////////////////////// // /////////////////////////////////////////// /////////////////////////////////////////////////////////////////////// СпособНачисления=?(СуммаАморт>=Стоимость,Перечисления.СпособНачисленияАмортизации.ПриВводеВЭксплуатацию,Перечисления.СпособНачисленияАмортизации.Линейный); Папка=""; КодОКОФ=""; МОЛ2=""; СрокИспользования=0; АГ_стр=""; Если ИнвНом<>СокрЛП(Префикс) Тогда Отбор = Новый Структура(); Отбор.Вставить("ИнвНом",ИнвНом); Строки = ТабличноеПоле1.НайтиСтроки(Отбор); Если Строки.Количество() = 1 Тогда КодОКОФ = Строки[0].КодОКОФ; МОЛ2 = Строки[0].МОЛ; СрокИспользования = Строки[0].СрокИспользования; АГ_стр= Строки[0].АмортизационнаяГруппа; Папка= Строки[0].Папка; Иначе Отбор = Новый Структура(); Отбор.Вставить("Наименование",СтрЗаменить(Наименование,",","")); Отбор.Вставить("ИнвНом",ИнвНом); Строки = ТабличноеПоле1.НайтиСтроки(Отбор); Если Строки.Количество() > 0 Тогда КодОКОФ = Строки[0].КодОКОФ; МОЛ2 = Строки[0].МОЛ; СрокИспользования = Строки[0].СрокИспользования; АГ_стр= Строки[0].АмортизационнаяГруппа; Папка= Строки[0].Папка; //Наименование=Строки[0].Наименование; ИНаче Сообщить("Не удалось найти соответсвие для "+Наименование+" "+ИнвНом,СтатусСообщения.ОченьВажное); КонецЕсли; КонецЕсли; Иначе Отбор = Новый Структура(); Отбор.Вставить("Наименование",СтрЗаменить(Наименование,",","")); Отбор.Вставить("Стоимость",Стоимость); Строки = ТабличноеПоле1.НайтиСтроки(Отбор); Если Строки.Количество() > 0 Тогда КодОКОФ = Строки[0].КодОКОФ; МОЛ2 = Строки[0].МОЛ; СрокИспользования = Строки[0].СрокИспользования; АГ_стр= Строки[0].АмортизационнаяГруппа; Папка= Строки[0].Папка; //Наименование=Строки[0].Наименование; ИНаче Сообщить("Не удалось найти соответсвие для "+Наименование+" "+Стоимость,СтатусСообщения.ОченьВажное); КонецЕсли; КонецЕсли; ЕстьОшибкаАГ=ложь; элОКОФ=Справочники.ОбщероссийскийКлассификаторОсновныхФондов.НайтиПоКоду(КодОКОФ); Если ЗначениеЗаполнено(элОКОФ) Тогда Выборка2=Результат2.Выбрать(); Попытка СтуктураПоиска2 = Новый Структура("ОКОФ"); СтуктураПоиска2.ОКОФ = элОКОФ; Если Выборка2.НайтиСледующий(СтуктураПоиска2) ТОгда АмортизационнаяГруппа=Выборка2.АмортизационнаяГруппа; Иначе СтуктураПоиска2 = Новый Структура("ОКОФ"); СтуктураПоиска2.ОКОФ = элОКОФ.Родитель; Если Выборка2.НайтиСледующий(СтуктураПоиска2) ТОгда АмортизационнаяГруппа=Выборка2.АмортизационнаяГруппа; Иначе СтуктураПоиска2 = Новый Структура("ОКОФ"); СтуктураПоиска2.ОКОФ = элОКОФ.Родитель.Родитель; Если Выборка2.НайтиСледующий(СтуктураПоиска2) ТОгда АмортизационнаяГруппа=Выборка2.АмортизационнаяГруппа; Иначе СтуктураПоиска2 = Новый Структура("ОКОФ"); СтуктураПоиска2.ОКОФ = элОКОФ.Родитель.Родитель.Родитель; Если Выборка2.НайтиСледующий(СтуктураПоиска2) ТОгда АмортизационнаяГруппа=Выборка2.АмортизационнаяГруппа; Иначе ЕстьОшибкаАГ=истина; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; Исключение ЕстьОшибкаАГ=истина; КонецПопытки; ИНаче ЕстьОшибкаАГ=истина; КонецЕсли; Если ЕстьОшибкаАГ Тогда // АГ_стр = ПроверкаСтроки(СокрЛП(ExcelЛист.Cells(Строка+4, 50).Value),"АГ",Истина,Истина); ЕстьОшибкаАГ=Ложь; ЕСли АГ_стр="1" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ПерваяГруппа; ИНачеЕСли АГ_стр="2" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ВтораяГруппа; ИНачеЕСли АГ_стр="3" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ТретьяГруппа; ИНачеЕСли АГ_стр="4" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ЧетвертаяГруппа; ИНачеЕСли АГ_стр="5" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ПятаяГруппа; ИНачеЕСли АГ_стр="6" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ШестаяГруппа ; ИНачеЕСли АГ_стр="7" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.СедьмаяГруппа; ИНачеЕСли АГ_стр="8" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ВосьмаяГруппа; ИНачеЕСли АГ_стр="9" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ДевятаяГруппа; ИНачеЕСли АГ_стр="10" Тогда АмортизационнаяГруппа= Перечисления.АмортизационныеГруппы.ДесятаяГруппа; Иначе ЕстьОшибкаАГ=Истина; КонецЕсли; КонецЕсли; Если ЕстьОшибкаАГ Тогда //Сообщить("В строке" + Строка +" не удалось коду ОКОФ сопоставить амортизационную группу.", СтатусСообщения.Обычное); ЕстьОшибки=Истина; АмортизационнаяГруппа=Перечисления.АмортизационныеГруппы.ПустаяСсылка(); КонецЕсли; Стр=ТаблицаДокумента.Добавить(); Стр.КрОшибки=ЕстьКритическиеОшибки;//1 Стр.Ошибки=ЕстьОшибки;//1 Стр.НомерПП=НомерПП;//1 Стр.Папка=Папка;//2 Стр.СчетУчетаОС=СчетУчетаОС;//2 Стр.КБК=КБК; //3 Стр.Наименование=Наименование;//4 Стр.грУчет=грУчет;//5 Стр.ИнвНом=?(ИнвНом<>СокрЛП(Префикс),ИнвНом,ИнвНом2);//6 Стр.Количество=Количество; //7 Стр.Стоимость=Стоимость; //8 Стр.МОЛ=?(ЗначениеЗаполнено(МОЛ2),МОЛ2,МОЛ); //9 Стр.ДатаПриянятия=ДатаПриянятия; //10 Стр. |
|||
20
kotokent
21.02.14
✎
07:24
|
(19) ты совсем что ли, мне столько когда не понять )
|
|||
21
огурец
21.02.14
✎
07:30
|
(20) Ну хз тогда.
В интернете полно примеров как считать данные в 1с из Exel. Как получишь сможешь получить данные, спросишь как сопоставить две таблицызначений. |
|||
22
Godofsin
21.02.14
✎
07:33
|
(17) Это чтение ДБФ
|
|||
23
Godofsin
21.02.14
✎
07:33
|
(20) Иди в другую профессию тогда, раз понимать не хочешь
|
|||
24
огурец
21.02.14
✎
07:43
|
(20) Держи пример по проще
Процедура ЧтениеXLSФайла(Элемент) Если ПустаяСтрока(ИмяФайла) Тогда Предупреждение("Для запуска обработки необходимо предварительно выбрать файл Microsoft Excel."); Возврат; КонецЕсли; Попытка // Загрузка Microsoft Excel Состояние("Загрузка Microsoft Excel..."); ExcelПриложение = Новый COMОбъект("Excel.Application"); Исключение Сообщить("Ошибка при загрузке Microsoft Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); Возврат; КонецПопытки; Попытка // Открытие файла Microsoft Excel Состояние("Открытие файла Microsoft Excel..."); ExcelФайл = ExcelПриложение.WorkBooks.Open(ИмяФайла); Исключение Сообщить("Ошибка открытия файла Microsoft Excel." + ИмяФайла + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); КонецПопытки; НомерЛиста=?(НомерЛиста=0,1,НомерЛиста); Попытка // Обработка файла Microsoft Excel Состояние("Обработка файла Microsoft Excel..."); // Читаем данные первого листа книги ExcelЛист = ExcelФайл.Sheets(НомерЛиста); // Определить количество строк и колонок выбранного листа книги Excel xlCellTypeLastCell = 11; ExcelПоследняяСтрока = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Row; ExcelПоследняяКолонка = ExcelЛист.Cells.SpecialCells(xlCellTypeLastCell).Column; Исключение Сообщить("Ошибка открытия листа №1 Microsoft Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Внимание); // Закрыть COM соединение для экономии памяти ExcelПриложение.Quit(); КонецПопытки; ТаблицаДокумента.Колонки.Добавить("КрОшибки",,"Крит.Ошибки",15);//-1 ТаблицаДокумента.Колонки.Добавить("ИнвНом",,"Инвентарный номер",10);//6 ТаблицаДокумента.Колонки.Добавить("Количество",,"Количество",6); //7 ТаблицаДокумента.Колонки.Добавить("Стоимость",,"Стоиомсть",6); //8 Если ПерваяСтрока=0 тогда ПерваяСтрока=1; КонецЕСли; Выполнять=Истина; Строка =ПерваяСтрока; НомерПП=0; Пока Выполнять Цикл ОбработкаПрерыванияПользователя(); СтрокаКарточки = СокрЛП(ExcelЛист.Cells(Строка, 3).Value); Если не ЗначениеЗаполнено(СтрокаКарточки) ТОгда Выполнять=Ложь; Продолжить; КонецЕсли; ИнвНом = СокрЛП(Префикс)+ПроверкаСтроки(СокрЛП(ExcelЛист.Cells(Строка, 1).Value),"ИнвНом",Истина,Ложь); Стоимость=0; Количество=0; Отбор = Новый Структура(); Отбор.Вставить("ИнвНом",ИнвНом); Строки = ТабличноеПоле1.НайтиСтроки(Отбор); Если Строки.Количество() = 1 Тогда Стоимость = Строки[0].Стоимость; Количество = Строки[0].Количество; КонецЕсли; Стр=ТаблицаДокумента.Добавить(); Стр.КрОшибки=ЕстьКритическиеОшибки;//1 Стр.Ошибки=ЕстьОшибки;//1 Стр.ИнвНом=?(ИнвНом<>СокрЛП(Префикс),ИнвНом,ИнвНом2);//6 Стр.Количество=Количество; //7 Стр.Стоимость=Стоимость; //8 Строка=Строка+1; КонецЦикла; ExcelПриложение.Quit(); Предупреждение("Загруженно строк "+(НомерПП),0); // Отобразить результаты загрузки в форме элемента ЭлементыФормы.ТаблицаДокумента.Значение = ТаблицаДокумента; ЭлементыФормы.ТаблицаДокумента.СоздатьКолонки(); КонецПроцедуры // ЧтениеXLSФайла(Элемент) |
|||
25
sergeev-ag-1977
21.02.14
✎
08:25
|
Есть обработка "Загрузка с табличного документа" - там пример кода как считать с Экселя данные. Анализ же данные уже дело попроще.
|
|||
26
kotokent
21.02.14
✎
08:41
|
Запрос.Выполнить().Пустой()
что это означает? |
|||
27
kotokent
21.02.14
✎
08:44
|
чне надо теперь сопоставить что в экселе и в документе, даные с экселя я считал и занес их в таблицу значений, теперь надо считать с документа и сопоставить их
|
|||
28
kotokent
21.02.14
✎
08:48
|
ТаблицаЗначений = Новый ТаблицаЗначений;
ТаблицаЗначений.Колонки.Добавить("Номер"); ТаблицаЗначений.Колонки.Добавить("Магазин"); ТаблицаЗначений.Колонки.Добавить("Бонусы"); ТаблицаЗначений.Колонки.Добавить("План"); ТаблицаЗначений.Колонки.Добавить("ПланСтар"); ТаблицаЗначений.Колонки.Добавить("ПроданоЗаМесяц"); ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияПроц"); ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияЕд"); ТаблицаЗначений.Колонки.Добавить("НеобходимыеЕжедневныеПродажи"); ТаблицаЗначений.Колонки.Добавить("ПотенциальныеВзысканияПремии"); СтрокаПодключения = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = "+СсылкаНаОбъект; СтрокаПодключения = СтрокаПодключения + "; Extended Properties = "+"""Excel 12.0"+";HDR=YES;IMEX=1"";"; // Подключаемся Об_Конект = Новый COMОбъект("ADODB.Connection"); Попытка Об_Конект.Open(СтрокаПодключения); Исключение Сообщить ("Невозможно подключится к Microsoft Excel Driver!!! |Возможно файл ["+СсылкаНаОбъект+"] открыт другим пользователем."); Возврат; КонецПопытки; СтрЗапроса = " |select * from [Лист1$]"; //данный запрос выбирает все заполненные ячейки листа, однако можно наложить условия отбора. синтаксис SQL Попытка RecordSet = Об_Конект.Execute(СтрЗапроса); Исключение Сообщить("Не удалось выполнить запрос к файлу Excel |"+ ОписаниеОшибки(),СтатусСообщения.Важное); Возврат; КонецПопытки; НомерСтроки = 1; ТекущийМагазин = Неопределено; Пока НЕ RecordSet.EOF() Цикл НомерСтроки = НомерСтроки+1; Если НомерСтроки<НачальнаяСтрока Тогда RecordSet.MoveNext(); Иначе //Дальше обрабатываем RecordSet НоваяСтрока = ТаблицаЗначений.Добавить(); НоваяСтрока.Номер = НомерСтроки; НоваяСтрока.Магазин = Строка(RecordSet.Fields(0).Value); НоваяСтрока.Бонусы = Строка(RecordSet.Fields(1).Value); НоваяСтрока.План = RecordSet.Fields(2).Value; НоваяСтрока.ПланСтар = Строка(RecordSet.Fields(3).Value); НоваяСтрока.ПроданоЗаМесяц = Строка(RecordSet.Fields(4).Value); НоваяСтрока.ПрогнозВыполненияПроц = Строка(RecordSet.Fields(5).Value); НоваяСтрока.ПрогнозВыполненияЕд = Строка(RecordSet.Fields(6).Value); НоваяСтрока.НеобходимыеЕжедневныеПродажи = Строка(RecordSet.Fields(7).Value); НоваяСтрока.ПотенциальныеВзысканияПремии = Строка(RecordSet.Fields(8).Value); RecordSet.MoveNext(); КонецЕсли; КонецЦикла; |
|||
29
kotokent
21.02.14
✎
08:48
|
вот так занес и подключился
|
|||
30
kotokent
21.02.14
✎
08:59
|
?
|
|||
31
kotokent
21.02.14
✎
11:00
|
другой вопрос, как строки занести в таблицу значений и потом 2-е таблицы значений сравнить?
|
|||
32
kotokent
21.02.14
✎
11:00
|
строки документа
|
|||
33
Wobland
21.02.14
✎
11:01
|
сравнивай сразу с ТЧ документа
|
|||
34
kotokent
21.02.14
✎
11:02
|
(33) а если надо сравнивать с составляющими еще этого документа
|
|||
35
Wobland
21.02.14
✎
11:07
|
а если не надо?
|
|||
36
kotokent
21.02.14
✎
11:14
|
(35) ну смотри, у меня есть ТЗ по экселю, теперь надо просто ее сравнить с ТЧ документа... как их перебрать?
|
|||
37
kotokent
21.02.14
✎
11:14
|
там ТЧ по магазинам отличаются
|
|||
38
kotokent
21.02.14
✎
11:19
|
(35) сравнить надо до 1-ого расхождения
|
|||
39
el7cartel
21.02.14
✎
11:21
|
(14) если честно, просто открой книгу и СП!
|
|||
40
kotokent
21.02.14
✎
11:26
|
(39) СП это что?
|
|||
41
Wobland
21.02.14
✎
11:35
|
вот спорим, ты с первого раза не сможешь правильно сказать, что есть расхождение
|
|||
42
огурец
21.02.14
✎
11:36
|
(36) > ну смотри, у меня есть ТЗ по экселю, теперь надо просто ее сравнить с ТЧ документа... как их перебрать?
Разбиваем задачу на два этапа: 1. Перебрать строки таблицы документа. 2. Найти соответсвующую строку в ТЗ С какие этапом трудности? |
|||
43
Wobland
21.02.14
✎
11:39
|
дихотомия!
мои поставщик поп-корна и гастроэнтеролог скоро озолотятся |
|||
44
kotokent
21.02.14
✎
11:50
|
(42) (43) он мне ходит по экселю, по всем строка... проблема в том, что я не могу сообразить как к ним обращаться к этим полям и как помот их сравнить
|
|||
45
огурец
21.02.14
✎
11:57
|
(44)
> сообразить как к ним обращаться СокрЛП(ExcelЛист.Cells(Строка, 3).Value); > как помот их сравнить Что именно сравнить? |
|||
46
kotokent
21.02.14
✎
11:59
|
(45) у меня пока такой код
//Создаем таблицу значений ТаблицаЗначений = Новый ТаблицаЗначений; ТаблицаЗначений.Колонки.Добавить("Номер"); ТаблицаЗначений.Колонки.Добавить("Магазин"); ТаблицаЗначений.Колонки.Добавить("Бонусы"); ТаблицаЗначений.Колонки.Добавить("План"); ТаблицаЗначений.Колонки.Добавить("ПланСтар"); ТаблицаЗначений.Колонки.Добавить("ПроданоЗаМесяц"); ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияПроц"); ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияЕд"); ТаблицаЗначений.Колонки.Добавить("НеобходимыеЕжедневныеПродажи"); ТаблицаЗначений.Колонки.Добавить("ПотенциальныеВзысканияПремии"); СтрокаПодключения = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = "+СсылкаНаОбъект; СтрокаПодключения = СтрокаПодключения + "; Extended Properties = "+"""Excel 12.0"+";HDR=YES;IMEX=1"";"; // Подключаемся Об_Конект = Новый COMОбъект("ADODB.Connection"); Попытка Об_Конект.Open(СтрокаПодключения); Исключение Сообщить ("Невозможно подключится к Microsoft Excel Driver!!! |Возможно файл ["+СсылкаНаОбъект+"] открыт другим пользователем."); Возврат; КонецПопытки; СтрЗапроса = " |select * from [Лист1$]"; //данный запрос выбирает все заполненные ячейки листа, однако можно наложить условия отбора. синтаксис SQL Попытка RecordSet = Об_Конект.Execute(СтрЗапроса); Исключение Сообщить("Не удалось выполнить запрос к файлу Excel |"+ ОписаниеОшибки(),СтатусСообщения.Важное); Возврат; КонецПопытки; НомерСтроки = 1; ТекущийМагазин = Неопределено; Пока НЕ RecordSet.EOF() Цикл НомерСтроки = НомерСтроки+1; Если НомерСтроки<НачальнаяСтрока Тогда RecordSet.MoveNext(); Иначе //Дальше обрабатываем RecordSet НоваяСтрока = ТаблицаЗначений.Добавить(); НоваяСтрока.Номер = НомерСтроки; НоваяСтрока.Магазин = Строка(RecordSet.Fields(0).Value); НоваяСтрока.Бонусы = Строка(RecordSet.Fields(1).Value); НоваяСтрока.План = RecordSet.Fields(2).Value; НоваяСтрока.ПланСтар = Строка(RecordSet.Fields(3).Value); НоваяСтрока.ПроданоЗаМесяц = Строка(RecordSet.Fields(4).Value); НоваяСтрока.ПрогнозВыполненияПроц = Строка(RecordSet.Fields(5).Value); НоваяСтрока.ПрогнозВыполненияЕд = Строка(RecordSet.Fields(6).Value); НоваяСтрока.НеобходимыеЕжедневныеПродажи = Строка(RecordSet.Fields(7).Value); НоваяСтрока.ПотенциальныеВзысканияПремии = Строка(RecordSet.Fields(8).Value); RecordSet.MoveNext(); КонецЕсли; КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.Ссылка |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин = &ТекМагазин | И ИА_ПланМагазина.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачПериода, Месяц) И КОНЕЦПЕРИОДА(&КонПериода, Месяц)"; Запрос.УстановитьПараметр("НачПериода",НачалоМесяца(Период)); Запрос.УстановитьПараметр("КонПериода",КонецМесяца(Период)); НовыйПланМагазина = Документы.ИА_ПланМагазина.ПустаяСсылка(); Для каждого СтрокаТаблицы ИЗ ТаблицаЗначений Цикл Если НЕ (Найти(СтрокаТаблицы.Магазин,"Магазин:")=0) Тогда Продолжить; Иначе Если НЕ (Найти(СтрокаТаблицы.Магазин,"Итого:")=0) Тогда Продолжить; Иначе Если СтрокаТаблицы.Магазин <> "" И ЗначениеЗаполнено(Справочники.ИА_Магазин.НайтиПоНаименованию(СтрокаТаблицы.Магазин).Ссылка) Тогда Сообщить ("ура"); Иначе КонецЕсли КонецЕсли КонецЕсли КонецЦикла; |
|||
47
el7cartel
21.02.14
✎
12:11
|
(41) расскажи плиз ТС что такое СП, у тебя лучше всех получается)))
|
|||
48
Wobland
21.02.14
✎
12:17
|
(40) Святое Писание - это сборник статей, написанный Пророком Нуралиевым и Апостолами-сотрудниками его при помощи Святаго Духа Божьего, открывающие нам тайны Божьего Промысла и дающие спасение душам нашим
|
|||
49
kotokent
21.02.14
✎
12:47
|
(48) ооо... это Святое писание... никогда не будет доступно для заблудших душ не посвященных...
|
|||
50
zladenuw
21.02.14
✎
12:56
|
(49) оно доступно для всех. только не верные, могут не понимать о чем глаголят Святые
|
|||
51
kotokent
21.02.14
✎
13:05
|
(50) святых еще понять надо, они говорят на чудотворном языке... а тот кто молод, не проник всем существом бытия
|
|||
52
Wobland
21.02.14
✎
13:19
|
интересно, а какое оно - существо бытия? имеет ли оно хвост? длинны ли его уши?
|
|||
53
kotokent
21.02.14
✎
13:33
|
(52) скажи лучше как обратиться к реквизиту табличной части документа?
|
|||
54
kotokent
21.02.14
✎
13:34
|
(52) у меня был такой пример
Если СтрокаТаблицы.Магазин <> "" И ЗначениеЗаполнено(Справочники.ИА_Магазин.НайтиПоНаименованию(СтрокаТаблицы.Магазин).Ссылка) Тогда но он не работает с документом |
|||
55
Wobland
21.02.14
✎
13:38
|
(53) через точку. полегчало?
|
|||
56
Enders
21.02.14
✎
13:38
|
Чую - это будет весёлая обработка :)
|
|||
57
kotokent
21.02.14
✎
13:40
|
(55) нет, документ вообще другой, я писал:
СтрокаТаблицы.План <> "" И ЗначениеЗаполнено(Документы.ИА_ПланМагазина.НайтиПоРеквизиту(СтрокаТаблицы.План).Ссылка) не работает |
|||
58
Wobland
21.02.14
✎
13:47
|
ага. была сегодня такая идея уже..
задача: написать обработку, из набора ключевых слов и операторов случайно генерирующую синтаксически верный код. и в качестве развития идеи: случайно генерировать хоть немного осмысленный код, а потом хором и с пивом угадывать, что он делает |
|||
59
kotokent
21.02.14
✎
13:47
|
(58) прикольно поди было бы хором и пивом... весело
|
|||
60
kotokent
21.02.14
✎
13:50
|
СтрокаТаблицы.План <> "" И ЗначениеЗаполнено(Документы.ИА_ПланМагазина.НайтиПоНаименованию(СтрокаТаблицы.План).ИА_План)
мне нужно сравнить СтрокаТаблицы.План и ИА_План,... я не соображу как??? |
|||
61
Wobland
21.02.14
✎
13:54
|
да, ты никак не сообразишь
|
|||
62
kotokent
21.02.14
✎
13:58
|
(61) я же не прошу код написать, я подсказку прошу
|
|||
63
kotokent
21.02.14
✎
14:18
|
Если СтрокаТаблицы.План <> "" И ЗначениеЗаполнено(Документы.ИА_ПланМагазина.НайтиПоРеквизиту("ИА_План", "СтрокаТаблицы.План").Ссылка) Тогда
как к нему обратиться? |
|||
64
kotokent
24.02.14
✎
06:06
|
?
|
|||
65
kotokent
25.02.14
✎
08:57
|
Для каждого СтрокаEx ИЗ СтрокиExcel Цикл
НайденаяСтрока = Табл1.Колонки.Найти(СтрокаEx.Бонусы); Если НайденаяСтрока = Неопределено Тогда Табл1 - это выгруженый запрос, надо в нем найти СтрокаEx.Бонусы что не так делаю? |
|||
66
Wobland
25.02.14
✎
08:58
|
1. всё ещё занимаешься этим;
2. не читаешь ошибку; 3. не думаешь; |
|||
67
kotokent
25.02.14
✎
09:01
|
(66) нет,
Табл1 = Запрос.Выполнить().Выгрузить(); поместил в Табл1 и к табличной части на прямую обратился ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазина.ПланМагазина.ИА_Бонус КАК Бонус, | ИА_ПланМагазина.ПланМагазина.ИА_План КАК План |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин а вот теперь как найти по параметру другому не могу сделать!?!? |
|||
68
kotokent
25.02.14
✎
09:02
|
НайденаяСтрока = Табл1.Колонки.Найти(СтрокаEx.Бонусы);
как тут из СтрокаEx.Бонусы значение сопоставить с Табл1 |
|||
69
Godofsin
25.02.14
✎
09:05
|
(68) Табл1.Найти(СтруктураОтбора);
|
|||
70
Godofsin
25.02.14
✎
09:05
|
В структуру вставляй СтрокаEx.Бонусы
|
|||
71
kotokent
25.02.14
✎
09:07
|
(70)
Отбор = Новый Структура; Отбор.Вставить("Бонус", СтрокаEx.Бонусы); так? |
|||
72
Wobland
25.02.14
✎
09:08
|
(69) фих
|
|||
73
Godofsin
25.02.14
✎
09:08
|
(71) угу, если колонка с бонусами в табл1 называется "Бонус"
|
|||
74
Godofsin
25.02.14
✎
09:08
|
(72) Пусть так делает )))
|
|||
75
Wobland
25.02.14
✎
09:09
|
(74) структура взлетит только с НайтиСтроками
|
|||
76
Godofsin
25.02.14
✎
09:09
|
+(73) и типы совпадают
|
|||
77
Godofsin
25.02.14
✎
09:09
|
(75) а, блин, не дописал.
|
|||
78
Godofsin
25.02.14
✎
09:10
|
.НайтиСтроки()
|
|||
79
Wobland
25.02.14
✎
09:10
|
давай лучше спросим ТС, что и где нужно найти, и что потом с этой кучей делать
|
|||
80
Godofsin
25.02.14
✎
09:10
|
возвращает массив с найденными ссылками на строки
|
|||
81
Godofsin
25.02.14
✎
09:11
|
(79) Ну давай попробуем )))
|
|||
82
Wobland
25.02.14
✎
09:11
|
что и где нужно найти, и что потом с этой кучей делать?
|
|||
83
Wobland
25.02.14
✎
09:12
|
(80) я помню, как ломалось моё представление о мире, когда я начинал дружить со ссылками. но это было уже после школы, есть подозрение, что ТС не осилит
|
|||
84
kotokent
25.02.14
✎
09:12
|
(81) (82) надо сопоставить бонусы в документе и в Экселе, а потом уже другой вопрос
|
|||
85
Wobland
25.02.14
✎
09:15
|
(84) что с чем?
|
|||
86
kotokent
25.02.14
✎
09:16
|
что то не работает
(85) Табл1 - это выгруженый запрос, его Бонус надо сопоставить с бонусом в Экселе |
|||
87
Godofsin
25.02.14
✎
09:17
|
(84) Сопоставляй сразу в запросе
|
|||
88
Wobland
25.02.14
✎
09:18
|
(86) и что с этим делать?
|
|||
89
kotokent
25.02.14
✎
09:19
|
(87) у меня условий и процедур потом куча
|
|||
90
kotokent
25.02.14
✎
09:20
|
мне сказали так сделать
НайденаяСтрока = Табл1.Найти(СтрокаEx.Бонусы) но он постояно возвращмает НЕОПРЕДЕЛЕНО |
|||
91
Wobland
25.02.14
✎
09:20
|
(89) да, тебе не позавидуешь
|
|||
92
kotokent
25.02.14
✎
09:23
|
ща картинку кину, мож я что то не правильно сделал
|
|||
93
kotokent
25.02.14
✎
09:23
|
||||
94
Wobland
25.02.14
✎
09:34
|
(92) откуда эта нотка сомнения в твоих буквах?
|
|||
95
Godofsin
25.02.14
✎
09:38
|
(93) Фак...
|
|||
96
Godofsin
25.02.14
✎
09:38
|
НайденнаяСтрока = Табл1.НайтиСтроки(Отбор1);
|
|||
97
Godofsin
25.02.14
✎
09:38
|
и смотри (80)
|
|||
98
Godofsin
25.02.14
✎
09:39
|
(89) Кучу условий и процедур выполняй до сопоставления в запросе.
|
|||
99
Wobland
25.02.14
✎
09:43
|
ёмаё, а кто пустил ребёнку в хранилище?
|
|||
100
kotokent
25.02.14
✎
10:56
|
(96) мне вот эту строчку не удается только сделать, как ее сделать?
|
|||
101
kotokent
25.02.14
✎
10:57
|
(96) я так пробовал, не получается
|
|||
102
Wobland
25.02.14
✎
11:00
|
(101) почему?
|
|||
103
kotokent
25.02.14
✎
11:03
|
(102) ошибка метода НайтиСторуки
|
|||
104
Wobland
25.02.14
✎
11:04
|
(103) из-за чего?
|
|||
105
kotokent
25.02.14
✎
11:06
|
(104) незннаю
|
|||
106
Wobland
25.02.14
✎
11:07
|
ну всё, ты приплыл. тупик
|
|||
107
kotokent
25.02.14
✎
11:08
|
(106) ну правда странно, раньше я так в точности делал, и работало, а теперь не работает
|
|||
108
kotokent
25.02.14
✎
11:08
|
Отбор = Новый Структура;
Отбор.Вставить("Магазин", СтрокаТаб.Магазин); СтрокиExcel = ТаблицаЗначений1.НайтиСтроки(Отбор); |
|||
109
Godofsin
25.02.14
✎
11:09
|
(106) ты еще не устал? за 100 перевалило )))
|
|||
110
Godofsin
25.02.14
✎
11:09
|
(108) отладчик в руки.
|
|||
111
kotokent
25.02.14
✎
11:10
|
(110) я и так по нему и хожу
|
|||
112
Wobland
25.02.14
✎
11:11
|
(109) я и за пятьсот переваливал с этим автором
|
|||
113
kotokent
25.02.14
✎
11:13
|
2 идентичных запроса, но 1-ый работает, а второй нет
Отбор = Новый Структура; Отбор.Вставить("Магазин", СтрокаТаб.Магазин); СтрокиExcel = ТаблицаЗначений1.НайтиСтроки(Отбор); Для каждого СтрокаEx ИЗ СтрокиExcel Цикл Отбор1 = Новый Структура; Отбор1.Вставить("Бонусы", СтрокаEx.Бонусы); НайденаяСтрока = Табл1.НайтиСтроки(Отбор1); |
|||
114
Godofsin
25.02.14
✎
11:14
|
(113) я тут запросов не наблюдаю
|
|||
115
Wobland
25.02.14
✎
11:15
|
утверждает, что не работает, откуда-то берёт какие-то "задания", появляется только в рабочее время, теперь вот в хранилище замечен. вопросы дурные задаёт давно, такого уникума уже бы вычислили и выпиннули. по всему выходит зачаток машинного разума. не может живой человек так долго прикидываться
|
|||
116
Godofsin
25.02.14
✎
11:15
|
(115) гыгыгы))) +100500!!!
|
|||
117
kotokent
25.02.14
✎
11:16
|
(115) ну вообще, зачаток машины, робот... ты прав
|
|||
118
kotokent
25.02.14
✎
11:16
|
подскажите лучше
|
|||
119
Wobland
25.02.14
✎
11:18
|
+(115) но меня смущает тот случайный отзыв на вакансию стажёра...
http://i.imgur.com/nDrB4qh.png |
|||
120
Wobland
25.02.14
✎
11:19
|
(119) тьху на меня, это ж сам ТС размещает вакансии
|
|||
121
Godofsin
25.02.14
✎
11:20
|
(118) Ошибку напиши сюда, которая вылетает при методе НайтиСтроки(), предварительно на ошибке нажав кнопку "Подробно". Скопируй оттуда текст ошибки, дитя машины.
|
|||
122
kotokent
25.02.14
✎
11:21
|
(121)
{Обработка.ИА_ПомошникСозданияДокументовПланМагазина.Форма.ПомошникСозданияПлановМагазинов.Форма(267)}: Ошибка при вызове метода контекста (НайтиСтроки) НайденаяСтрока = Табл1.НайтиСтроки(Отбор1); по причине: Неверное имя колонки |
|||
123
badboychik
25.02.14
✎
11:22
|
это последствия запуска изучения 1С в школах
|
|||
124
Godofsin
25.02.14
✎
11:24
|
(122) Как думаешь, вот это о чем говорит: "Неверное имя колонки"?
|
|||
125
Godofsin
25.02.14
✎
11:25
|
(120) херасе... ТС франч хочет открыть?
|
|||
126
Wobland
25.02.14
✎
11:25
|
(122) Wobland
104 - 25.02.14 - 11:04 (103) из-за чего? kotokent 105 - 25.02.14 - 11:06 (104) незннаю |
|||
127
Wobland
25.02.14
✎
11:26
|
(125) не выйдет, собеседование сам с собой не пройдёт
|
|||
128
kotokent
25.02.14
✎
11:26
|
(124) (126) имя колонки правильное, сейчас поставил "Бонус" вместо "Бонусы" значение не определено
|
|||
129
Godofsin
25.02.14
✎
11:27
|
(127) =)))))
|
|||
130
Godofsin
25.02.14
✎
11:27
|
(128) Значит, не нашел строк.
|
|||
131
kotokent
25.02.14
✎
11:28
|
(130) строки тоже есть, проверил через вичислитель значений
|
|||
132
Wobland
25.02.14
✎
11:30
|
(131) ты себе больше доверяешь, чем бездушной железяке?
|
|||
133
kotokent
25.02.14
✎
11:33
|
(132) эта шайтан-машина меня постоянно подводит
|
|||
134
kotokent
25.02.14
✎
11:33
|
)))
|
|||
135
kotokent
25.02.14
✎
11:35
|
он мне вычисляет масив, но там пусто, что то хрень какая то
|
|||
136
Wobland
25.02.14
✎
11:37
|
зато как удобно сортировать такой массив
|
|||
137
Godofsin
25.02.14
✎
11:39
|
(135) Значит, типы не совпадают
|
|||
138
kotokent
25.02.14
✎
11:41
|
(137) он мне передает массив, а мне надо значение...
|
|||
139
Wobland
25.02.14
✎
11:42
|
мож, глюк платформы? человек хочет значение, а ему внезапно выдают массив
|
|||
140
kotokent
25.02.14
✎
11:43
|
(139) это не глюк, это ошибка моя
|
|||
141
Wobland
25.02.14
✎
11:44
|
(140) точно?
|
|||
142
kotokent
25.02.14
✎
11:45
|
(141) отбор не нужен, надо как то через просто "найти" сделать
|
|||
143
badboychik
25.02.14
✎
11:45
|
(139) это глюк человека! ))
|
|||
144
Wobland
25.02.14
✎
11:46
|
(142) почему не нужен?
|
|||
145
Godofsin
25.02.14
✎
11:46
|
(143) Мы подозреваем, что он не человек ))))
|
|||
146
kotokent
25.02.14
✎
11:47
|
(144) отбор масив возвращает
|
|||
147
Wobland
25.02.14
✎
11:47
|
да, давайте скажем "это глюк автора"
|
|||
148
Wobland
25.02.14
✎
11:47
|
(146) почему так?
|
|||
149
kotokent
25.02.14
✎
11:51
|
(148) как написать то, он постоянно значение неопределено возвлащает, хоть с отбором хоть без него
|
|||
150
Wobland
25.02.14
✎
11:52
|
(149) сумрачный кошмар и скрежет зубовный
|
|||
151
badboychik
25.02.14
✎
11:54
|
это потому что 1Ска еще сырая
|
|||
152
Wobland
25.02.14
✎
11:56
|
коллеги, раз уж здесь пятница, скажите, где регистр в левой части конструктора?
http://i.imgur.com/nc4Znxt.png |
|||
153
vhl
25.02.14
✎
11:59
|
(152) Нажми на "РегистрСведений1" правой кнопкой - "Заменить таблицу"
|
|||
154
kotokent
25.02.14
✎
12:05
|
(150) (151) (153) как получить значение из этого массива и занести в переменную
|
|||
155
Wobland
25.02.14
✎
12:05
|
что-то гриншот подводит..
(153) http://s018.radikal.ru/i503/1402/5a/6efcda73a080.png |
|||
156
Wobland
25.02.14
✎
12:06
|
(154) какое значение?
|
|||
157
Godofsin
25.02.14
✎
12:07
|
(154) Для н = 0 по Массив.Количество() - 1 цикл
НаконецТоМоеЗначение = Массив[н].ЗначениеКотороеХочу; КонецЦикла; |
|||
158
kotokent
25.02.14
✎
12:13
|
(157) (156) подождите, другой вопрос, у меня бонус в запросе - таблица значений, надо его в строку превратить... сказали что в построителе запросов гдето это есть... а может я чтото не понял
|
|||
159
Wobland
25.02.14
✎
12:16
|
опять сомненья вижу. отринь их - ты не понял
|
|||
160
kotokent
25.02.14
✎
12:17
|
(159) ты как всегда ))), нет бы подсказать
|
|||
161
Wobland
25.02.14
✎
12:18
|
(160) надоело уже
|
|||
162
kotokent
25.02.14
✎
12:23
|
(161) ну кинь наметку
|
|||
163
Godofsin
25.02.14
✎
12:25
|
Все, короче. ТС начинает внушать мне чувство безнадежности, я наваливаю с темы...
|
|||
164
kotokent
25.02.14
✎
12:27
|
КС = Новый КвалификаторыСтроки(1000);
МассивС = Новый Массив; МассивС.Добавить(Тип("Строка")); ОписаниеТиповСтр = Новый ОписаниеТипов(МассивС, ,КС ,); ТЗ.Колонки.Добавить("КолонкаСтрока", ОписаниеТиповСтр); |
|||
165
kotokent
25.02.14
✎
12:27
|
(163) так получится?
|
|||
166
Wobland
25.02.14
✎
12:28
|
(163) загадка! мне так в диковинку было сегодня с утра ;)
|
|||
167
vhl
25.02.14
✎
12:29
|
(155) Голимая консоль - брак гонит
|
|||
168
kotokent
25.02.14
✎
12:32
|
(166) как перевести "Бонус" табличной части в тип строка
|
|||
169
kotokent
25.02.14
✎
12:32
|
или ссылка
|
|||
170
brato4karik
25.02.14
✎
12:33
|
(168) А значение в "Бонус" какое?
|
|||
171
kotokent
25.02.14
✎
12:33
|
(169) лучше строка
|
|||
172
kotokent
25.02.14
✎
12:33
|
(170) строка
|
|||
173
brato4karik
25.02.14
✎
12:34
|
Тоесть в источнике данных Строка и надо преобразовать в Строку?
|
|||
174
kotokent
25.02.14
✎
12:35
|
(173) ща покажу
|
|||
175
Wobland
25.02.14
✎
12:37
|
(167) могу повторить на любой ;)
|
|||
176
brato4karik
25.02.14
✎
12:37
|
Уважаемый ТС, молодость не порок, а не знание не грех, но за 180 сообщений было множество подсказок на которые можно опереться. Ты попробуй взглянуть на задачу снова, и из все выше предложенных советов ты ее быстро решишь, не зацикливайся на проблемном участке с кодом.
|
|||
177
kotokent
25.02.14
✎
12:38
|
||||
178
kotokent
25.02.14
✎
12:39
|
надо перевести бонус и план, они там как таблица значений в значение
|
|||
179
brato4karik
25.02.14
✎
12:42
|
Ну ты пойми таблицы это коллекции значений(перевод в "значение" вряд ли тебе поможет) получишь строку ноликов запятых и латинских букв. Таблицы можно циклом оббегать и сравнивать значения ячеек в каждых строчках. Ну для иллюстрации представь себе классный журнал двух разных классов, как бы ты из сам сравнил?
|
|||
180
kotokent
25.02.14
✎
12:45
|
(179) если бы можно было обратиться к значению в табличной части на прямую
|
|||
181
kotokent
25.02.14
✎
12:45
|
так бы я и сравнил их
|
|||
182
Wobland
25.02.14
✎
12:45
|
(180) можно и напрямую
(181) что с чем? |
|||
183
kotokent
25.02.14
✎
12:47
|
(182) ну смотри, у меня есть Экселевское значение "бонус" и мне надо его сравнить со значением в табличной части, тоже "Бонус"
|
|||
184
kotokent
25.02.14
✎
12:48
|
(183) запрос по документу я выгрузил в Табл1
|
|||
185
kotokent
25.02.14
✎
12:51
|
(184) и ещи там их по 1-ому магазину много
|
|||
186
Wobland
25.02.14
✎
12:51
|
(183) я не хочу смотреть, я спрашиваю: что с чем сравнить?
|
|||
187
kotokent
25.02.14
✎
12:56
|
(186) ну я же тебе сказал...
Экселевское значение "бонус" и мне надо его сравнить со значением в табличной части, тоже "Бонус" |
|||
188
brato4karik
25.02.14
✎
12:59
|
Ну вот в твоем сообщении и ответ сразу есть, сравни значения разных таблиц, а значения находятся в строках. Значения должны быть одного типа.
|
|||
189
Wobland
25.02.14
✎
12:59
|
1. Экселевское значение "бонус"
2. значение в табличной части, тоже "Бонус" что такое п. 1? |
|||
190
kotokent
25.02.14
✎
13:01
|
(189) значение
|
|||
191
kotokent
25.02.14
✎
13:01
|
(189) или я не понял тебя
|
|||
192
Wobland
25.02.14
✎
13:02
|
(191) больше уверенности в голосе
|
|||
193
Wobland
25.02.14
✎
13:03
|
где взять Экселевское значение "бонус"?
|
|||
194
kotokent
25.02.14
✎
13:04
|
(193) я его уже беру из файла экселевского по определенному магазину, а там бонусов много
|
|||
195
Wobland
25.02.14
✎
13:05
|
как выглядит этот момент взятия?
|
|||
196
kotokent
25.02.14
✎
13:06
|
(195)
//Создаем таблицу значений ТаблицаЗначений1 = Новый ТаблицаЗначений; ТаблицаЗначений1.Колонки.Добавить("Номер"); ТаблицаЗначений1.Колонки.Добавить("Магазин"); ТаблицаЗначений1.Колонки.Добавить("Бонусы"); ТаблицаЗначений1.Колонки.Добавить("План"); //ТаблицаЗначений.Колонки.Добавить("ПланСтар"); //ТаблицаЗначений.Колонки.Добавить("ПроданоЗаМесяц"); //ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияПроц"); //ТаблицаЗначений.Колонки.Добавить("ПрогнозВыполненияЕд"); //ТаблицаЗначений.Колонки.Добавить("НеобходимыеЕжедневныеПродажи"); //ТаблицаЗначений.Колонки.Добавить("ПотенциальныеВзысканияПремии"); СтрокаПодключения = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source = "+СсылкаНаОбъект; СтрокаПодключения = СтрокаПодключения + "; Extended Properties = "+"""Excel 12.0"+";HDR=YES;IMEX=1"";"; // Подключаемся Об_Конект = Новый COMОбъект("ADODB.Connection"); Попытка Об_Конект.Open(СтрокаПодключения); Исключение Сообщить ("Невозможно подключится к Microsoft Excel Driver!!! |Возможно файл ["+СсылкаНаОбъект+"] открыт другим пользователем."); Возврат; КонецПопытки; СтрЗапроса = " |select * from [Лист1$]"; //данный запрос выбирает все заполненные ячейки листа, однако можно наложить условия отбора. синтаксис SQL Попытка RecordSet = Об_Конект.Execute(СтрЗапроса); Исключение Сообщить("Не удалось выполнить запрос к файлу Excel |"+ ОписаниеОшибки(),СтатусСообщения.Важное); Возврат; КонецПопытки; НомерСтроки = 1; ТекущийМагазин = Неопределено; Пока НЕ RecordSet.EOF() Цикл НомерСтроки = НомерСтроки+1; Если НомерСтроки<НачальнаяСтрока Тогда RecordSet.MoveNext(); Иначе //Дальше обрабатываем RecordSet НоваяСтрока = ТаблицаЗначений1.Добавить(); НоваяСтрока.Номер = НомерСтроки; НоваяСтрока.Магазин = Строка(RecordSet.Fields(0).Value); НоваяСтрока.Бонусы = Строка(RecordSet.Fields(1).Value); НоваяСтрока.План = RecordSet.Fields(2).Value; //НоваяСтрока.ПланСтар = Строка(RecordSet.Fields(3).Value); //НоваяСтрока.ПроданоЗаМесяц = Строка(RecordSet.Fields(4).Value); //НоваяСтрока.ПрогнозВыполненияПроц = Строка(RecordSet.Fields(5).Value); //НоваяСтрока.ПрогнозВыполненияЕд = Строка(RecordSet.Fields(6).Value); //НоваяСтрока.НеобходимыеЕжедневныеПродажи = Строка(RecordSet.Fields(7).Value); //НоваяСтрока.ПотенциальныеВзысканияПремии = Строка(RecordSet.Fields(8).Value); RecordSet.MoveNext(); КонецЕсли; КонецЦикла; |
|||
197
kotokent
25.02.14
✎
13:07
|
создал таблицузначений1
и теперь |
|||
198
kotokent
25.02.14
✎
13:07
|
Для каждого СтрокаТаб ИЗ ТаблицаЗначений1 Цикл
Запрос = Новый Запрос; Запрос.УстановитьПараметр("НачПериода",НачалоМесяца(Период)); Запрос.УстановитьПараметр("КонПериода",КонецМесяца(Период)); Если НЕ (Найти(СтрокаТаб.Магазин,"Магазин:")=0) Тогда Продолжить; Иначе Если НЕ (Найти(СтрокаТаб.Магазин,"Итого:")=0) Тогда Продолжить; Иначе Запрос.УстановитьПараметр("Магазин",СтрокаТаб.Магазин); КонецЕсли; КонецЕсли; Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазина.ПланМагазина.ИА_Бонус КАК Бонус, | ИА_ПланМагазина.ПланМагазина.ИА_План КАК План |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин"; Табл1 = Запрос.Выполнить().Выгрузить(); Если Табл1.Количество() = 0 Тогда Сообщить ("Создаем новый документ ""План"""); КонецЕсли; Отбор = Новый Структура; Отбор.Вставить("Магазин", СтрокаТаб.Магазин); СтрокиExcel = ТаблицаЗначений1.НайтиСтроки(Отбор); Для каждого СтрокаEx ИЗ СтрокиExcel Цикл Для каждого СтрТабл1Бонус ИЗ Табл1.Колонки.Бонус Цикл; Отбор1 = Новый Структура; Отбор1.Вставить("Бонус", СтрокаEx.Бонусы); НайденыйБонус = Табл1.НайтиСтроки(Отбор1); Если НайденыйБонус = Неопределено Тогда Сообщить ("Создаем новый документ ""План"""); Иначе Отбор2 = Новый Структура; Отбор2.Вставить("План", СтрокаEx.План); НайденыйПлан = Табл1.НайтиСтроки(Отбор2); Если СтрокаEx.План <> НайденыйПлан Тогда Сообщить ("Надо создавать новый Эксель и заблокировать!!!"); КонецЕсли КонецЕсли КонецЦикла КонецЦикла КонецЦикла |
|||
199
Wobland
25.02.14
✎
13:08
|
на фига весь этот бред? где п.1?
|
|||
200
kotokent
25.02.14
✎
13:09
|
(199) в (196)
|
|||
201
Wobland
25.02.14
✎
13:11
|
(200) думаешь, я туда полезу? где Экселевское значение "бонус" ?
|
|||
202
kotokent
25.02.14
✎
13:11
|
(201) СтрокаEx.Бонусы
|
|||
203
Wobland
25.02.14
✎
13:11
|
(202) строка чего?
|
|||
204
kotokent
25.02.14
✎
13:12
|
(203) ну это я так обозвал ее
Для каждого СтрокаEx ИЗ СтрокиExcel Цикл |
|||
205
Wobland
25.02.14
✎
13:14
|
пойдёт. теперь скажи про "значение в табличной части, тоже "Бонус"". что это и где взять?
|
|||
206
kotokent
25.02.14
✎
13:15
|
(205) есть документ "ПланМагазина", в нем табличная часть и там "Бонус", перед этим я делал запрос из этого документа
|
|||
207
kotokent
25.02.14
✎
13:15
|
(206)
Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазина.ПланМагазина.ИА_Бонус КАК Бонус, | ИА_ПланМагазина.ПланМагазина.ИА_План КАК План |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин"; Табл1 = Запрос.Выполнить().Выгрузить(); |
|||
208
Wobland
25.02.14
✎
13:16
|
(207) за такое ставят на горох прямо простреленными коленями
ну есть какая-то таблица, и чо? |
|||
209
kotokent
25.02.14
✎
13:18
|
(208) мне из нее надо взять бонус
|
|||
210
Wobland
25.02.14
✎
13:19
|
(209) бери
|
|||
211
kotokent
25.02.14
✎
13:20
|
(210) может тебе струкруру показать
он не берет, там их много, а надо каждый с каждым сравнивать |
|||
212
kotokent
25.02.14
✎
13:22
|
||||
213
brato4karik
25.02.14
✎
13:22
|
Позволь спросить а тип данных "Бонус" какой?
|
|||
214
Wobland
25.02.14
✎
13:22
|
(211) слишком много счастья. ты будешь уже свой бонус брать?
|
|||
215
kotokent
25.02.14
✎
13:23
|
(214) я хочу, взять каждый из них и сравнить с экселевским
|
|||
216
brato4karik
25.02.14
✎
13:24
|
(215) в чем сложность? задай вопрос.
|
|||
217
kotokent
25.02.14
✎
13:27
|
(216) у меня в Табл1 - запросом выбраное, этот бонус это таблица значений, а в СтрокаEx.Бонус это уже конкретное значение...
надо чтобы бегал по значениям Табл1.Бонус и сравнивал их с текущим СтрокаEx.Бонус |
|||
218
Wobland
25.02.14
✎
13:28
|
(217) вперёд
|
|||
219
brato4karik
25.02.14
✎
13:29
|
(215) ведь снова в вопросе часть ответа. Если у тебя в результате отбора возвращается коллекция(Массив,Таблица) и ты хочешь сравнить одно значение с каждым.
Есть цикл даже похожий Для каждого строка Из НужнаяТебеТаблица Цикл ... |
|||
220
kotokent
25.02.14
✎
13:33
|
(219)
Для Каждого ТБонус ИЗ Табл1 Цикл Если ТБонус.Бонус = СтрокаEx.Бонусы Тогда Сообщить ("Хорошо"); ИНАЧЕ Сообщить ("Плохо"); КонецЕсли КонецЦикла; так написал, ща посмотри что будет |
|||
221
kotokent
25.02.14
✎
13:35
|
(220)все равно таблица значений)))
|
|||
222
Wobland
25.02.14
✎
13:36
|
(221) откуда она там?
|
|||
223
kotokent
25.02.14
✎
13:37
|
(222) с запроса
|
|||
224
brato4karik
25.02.14
✎
13:38
|
Да запрос он так написал, там поди в значении поля одной ТЗ находится другая.
|
|||
225
kotokent
25.02.14
✎
13:38
|
(222) мне и сказали что в запросе можно как то сделать значения
|
|||
226
Wobland
25.02.14
✎
13:38
|
(224) я в курсе
(225) а как? |
|||
227
brato4karik
25.02.14
✎
13:39
|
За такой запрос нужно коленное сухожилие вязальным крючком подцеплять. Но ты все таки переделай его на вид, который вернет плоскую таблицу значений
|
|||
228
kotokent
25.02.14
✎
13:39
|
(226) с этим я точно не сталкивался
|
|||
229
kotokent
25.02.14
✎
13:40
|
(227) (226)
Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазина.ПланМагазина.ИА_Бонус КАК Бонус, | ИА_ПланМагазина.ПланМагазина.ИА_План КАК План |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин"; Табл1 = Запрос.Выполнить().Выгрузить(); как? |
|||
230
Wobland
25.02.14
✎
13:41
|
из ИА_ПланМагазина.ПланМагазина
|
|||
231
brato4karik
25.02.14
✎
13:41
|
Ну если тебе нужно выбрать табличку часть то и обратись к ней в конструкторе запроса. Щелкни по плюсику и в качестве источника выбери нужную тебе ТЧ.
|
|||
232
kotokent
25.02.14
✎
13:42
|
(231) (230)
Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазина.ПланМагазина.( | ИА_Бонус, | ИА_План | ) |ИЗ | Документ.ИА_ПланМагазина КАК ИА_ПланМагазина |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин"; Табл1 = Запрос.Выполнить().Выгрузить(); |
|||
233
kotokent
25.02.14
✎
13:42
|
так что ли
|
|||
234
Wobland
25.02.14
✎
13:43
|
Щелкни по плюсику и в качестве источника выбери нужную тебе ТЧ.
все слова знаю, но только если они раскиданы по разным предложениям? |
|||
235
kotokent
25.02.14
✎
13:45
|
(234)
Запрос.Текст = "ВЫБРАТЬ | ИА_ПланМагазина.ИА_Магазин, | ИА_ПланМагазина.Дата, | ИА_ПланМагазинаПланМагазина.ИА_Бонус, | ИА_ПланМагазинаПланМагазина.ИА_План |ИЗ | Документ.ИА_ПланМагазина.ПланМагазина КАК ИА_ПланМагазинаПланМагазина | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ИА_ПланМагазина КАК ИА_ПланМагазина | ПО ИА_ПланМагазинаПланМагазина.Ссылка = ИА_ПланМагазина.Ссылка |ГДЕ | ИА_ПланМагазина.ИА_Магазин.Наименование = &Магазин"; Табл1 = Запрос.Выполнить().Выгрузить(); вот так получилось |
|||
236
kotokent
25.02.14
✎
13:46
|
(235) запрос
|
|||
237
Wobland
25.02.14
✎
13:46
|
а забавно. товарищ берёт и за бесплатно рассказывает коммерческую тайну ООО "Интерантенна"
|
|||
238
kotokent
25.02.14
✎
13:46
|
(237) ты все равно не поймешь что и зачем
|
|||
239
kotokent
25.02.14
✎
13:47
|
(237) :)
|
|||
240
Wobland
25.02.14
✎
13:47
|
(238) в самых смелых мечтах не осмеливаюсь
|
|||
241
kotokent
25.02.14
✎
13:49
|
(240) к стати, теперь и правдазначение показывает
|
|||
242
kotokent
25.02.14
✎
13:50
|
(237) и интерантена, это просто название организации для тренировки
|
|||
243
Wobland
25.02.14
✎
13:51
|
(242) сам придумал?
|
|||
244
kotokent
25.02.14
✎
13:52
|
(243) нет, она вроде где то есть
|
|||
245
Wobland
25.02.14
✎
13:52
|
а номенклатуру откуда взял?
|
|||
246
Wobland
25.02.14
✎
13:53
|
"РАБОЧАЯ БАЗА" тоже вроде где-то написано?
|
|||
247
kotokent
25.02.14
✎
13:54
|
(245) это файлик просто я сделал для тренировки
|
|||
248
kotokent
25.02.14
✎
13:54
|
(246) база то рабочая, но другой организации
|
|||
249
brato4karik
25.02.14
✎
13:55
|
Отходил за чаем, много чего произошло, мои поздравления)
P.S. Не останавливайся, у нас 5 человек из конторы следят за твоим успехом. |
|||
250
Wobland
25.02.14
✎
13:55
|
гыыы
|
|||
251
brato4karik
25.02.14
✎
13:55
|
P.P.S. И теперь безопастник еще подключился, тоже стало интересно)
|
|||
252
kotokent
25.02.14
✎
13:56
|
я опять с отбором туплю
|
|||
253
Wobland
25.02.14
✎
13:58
|
что-то не вижу на сайте интерантенны форму обратной связи..
|
|||
254
kotokent
25.02.14
✎
13:59
|
(253) (251) один хрен массив возвращает и пустой
|
|||
255
Godofsin
25.02.14
✎
14:01
|
(253) Ссылку кинуть хочешь? ))))
|
|||
256
brato4karik
25.02.14
✎
14:02
|
Ну если посмотреть СП(искренне не люблю такие сокращения), то что нам там говорят по поводу метода НайтиСтроки? Вероятно что ничего не найдено.
|
|||
257
Wobland
25.02.14
✎
14:03
|
(255) это вам не запрос в цикле, я подписывался страшными клятвами подобных штук не делать
|
|||
258
kotokent
25.02.14
✎
14:04
|
(256) (257) капец короче, я в тупике
|
|||
259
brato4karik
25.02.14
✎
14:06
|
Ну еще раз предлагаю: Перечитай ветку, собери все советы и подсказки, обязательно подумай(только спокойно) и щаг за шагом сделай все по новой
|
|||
260
kotokent
25.02.14
✎
14:10
|
(259) все таки он массив там находит, надо с другой стороны подойти, с какой незнаю, сразу говорю
|
|||
261
Wobland
25.02.14
✎
14:12
|
(260) мне удобней было держать её так, чтобы мести можно было справа налево. попробуй и ты так
|
|||
262
kotokent
25.02.14
✎
14:15
|
(261) да надо только узнать с какой
|
|||
263
brato4karik
25.02.14
✎
14:16
|
(260)Ну ты пойми очень хочется сейчас пошутить. Если массив находит(если предположить что ты нас не обманываешь, то он должен быть не пустой) если он пустой - значит не находит.
Хорошо не хочешь сначала, и хочешь с "другой" стороны попробуй(все в меру знаний и испорченности), но ты тогда хотя бы идею или концепцию что ли этого другого подхода нам опиши. Просто на словах. P.S. Ну даже на улице солнышко вторит хорошему настроению |
|||
264
Wobland
25.02.14
✎
14:16
|
(262) там, где прутики - это низ
|
|||
265
kotokent
25.02.14
✎
14:21
|
(264) :D
(263) Я щас это что сделал мусолю, может сам гдето ошибся, запрос не пустой, у всего есть значения |
|||
266
Wobland
25.02.14
✎
14:23
|
>у всего есть значения
этот мир не может без значений, даже у нулла этой весной появляется значение |
|||
267
kotokent
25.02.14
✎
14:23
|
с бонусом разберусь, а потом соображу поди кась
|
|||
268
kotokent
25.02.14
✎
14:26
|
||||
269
kotokent
25.02.14
✎
14:26
|
Отбор = Новый Структура;
Отбор.Вставить("Магазин", СтрокаТаб.Магазин); СтрокиExcel = ТаблицаЗначений1.НайтиСтроки(Отбор); |
|||
270
kotokent
25.02.14
✎
14:26
|
что ему надо падле
|
|||
271
kotokent
25.02.14
✎
14:26
|
Отбор1 = Новый Структура;
Отбор1.Вставить("Бонусы", СтрокаEx.Бонусы); НайденыйБонус = Табл1.Найти(Отбор1); |
|||
272
kotokent
25.02.14
✎
14:28
|
(271) я тут исправил
|
|||
273
kotokent
25.02.14
✎
14:33
|
Отбор1 = Новый Структура;
Отбор1.Вставить("Бонус", СтрокаEx.Бонусы); НайденыйБонус = Табл1.НайтиСтроки(Отбор1); как их сопоставить |
|||
274
Wobland
25.02.14
✎
14:34
|
кого?
|
|||
275
kotokent
25.02.14
✎
14:38
|
(274) СтрокаEx.Бонусы - этот бонус и бонус в "Табл1"?
|
|||
276
kotokent
25.02.14
✎
14:38
|
(275) Табл1 - здесь много их, надо нужный
|
|||
277
kotokent
25.02.14
✎
14:41
|
(276) он не загоняет значение в "НайденыйБонус"
|
|||
278
kotokent
25.02.14
✎
14:41
|
(277) и это не вычисляет
|
|||
279
kotokent
25.02.14
✎
14:41
|
Табл1.НайтиСтроки(Отбор1)
|
|||
280
brato4karik
25.02.14
✎
15:09
|
Ну я уж пообедать успел), с не загоняет все понятно, видать нечего загонять) ,а вот не вычисляет не понятно: тут варианты если ошибка то ее в студию, если возвращает пустой массив то очевидно, что в Табл1 нет строк удовлетворяющих условию из Отбор1(тут снова варианты: либо нет колонки с именем ключа отбора, либо нет строк с указанными значениями поиска(тут снова варианты, если глазками кажется что значения все же есть надо убедиться что они одного типа Число = Число, Строка = Строка(Снова Внимание "Строка " <> "Строка" или "457,5" <> 457,5 ))))
|
|||
281
Wobland
25.02.14
✎
15:52
|
(280) "457,5" = 457,5
|
|||
282
Wobland
25.02.14
✎
15:57
|
хм, приколы 8.3?
http://i.imgur.com/0jw3Ohi.png |
|||
283
brato4karik
25.02.14
✎
16:02
|
скриншоты не могу смотреть, политика партии(, но да если равно то это прям и правда юморок(все же излишняя обработка при неявном преобразовании типов не есть гуд, мое мнение) а еще хотел дописать может там у ТС проблемы с разделителем дробной части из Экселя все таки данные тянет. "457.5" <> 457,5 вообщем если он тут будет, пусть пишет значения из отладчика, ну и настроение поднимает конечно
|
|||
284
zladenuw
25.02.14
✎
16:20
|
(282) да не и в 8.2 те же яйца
Строка(475.5)="475.5" так ложь, меняет знак "." на "," прикольно блин :) |
|||
285
Wobland
25.02.14
✎
16:24
|
похерили ветку, где я как-то так в табле фокусы показывал
http://i.imgur.com/1LT3HAI.png |
|||
286
brato4karik
25.02.14
✎
16:30
|
да надо выписать в отдельный топик, все магические преобразования, а то зачастую как у школьника в первый раз, ну где же ТС, скоро солнце сядет
|
|||
287
Wobland
25.02.14
✎
16:35
|
(286) он свалил до утра
|
|||
288
brato4karik
25.02.14
✎
16:38
|
(287) Ну вот, обычное конструктивное уныние)
|
|||
289
kotokent
26.02.14
✎
06:11
|
(288) (287) у меня в Экселе бонус - строка, а в табл1(запрос - справочник ссылка)
|
|||
290
Godofsin
26.02.14
✎
06:16
|
(289) Преобразуй строку в справочникСсылка
|
|||
291
Wobland
26.02.14
✎
06:20
|
за вчера 224 поста. означает ли это, что сегодня результата не будет до 513го поста?
|
|||
292
Godofsin
26.02.14
✎
06:23
|
(291) как пить дать. Охренеть, на протяжении 300 постов ТС не может сравнить 2 таблички...
|
|||
293
Wobland
26.02.14
✎
06:25
|
(292) он в прошлом двести постов строку на соответствие маске проверял. строку! одномерную хренотню
|
|||
294
kotokent
26.02.14
✎
06:25
|
(292) ЗначениеВСтрокуВнутр(Табл1.Колонки.Бонус);
я думаю может не в строку преобразовать бонус в запросе, вот так? |
|||
295
Wobland
26.02.14
✎
06:26
|
(294) что получилось?
|
|||
296
kotokent
26.02.14
✎
06:26
|
(295) да ничего, ссылка как была так и есть
|
|||
297
kotokent
26.02.14
✎
06:27
|
и вот эта строчка мне сделал значение строка
{"#",e162969e-36e8-44f4-a5fd-fa2bf170a4f5} |
|||
298
Wobland
26.02.14
✎
06:29
|
как ещё можно из строки-наименования получить ссылку на справочник?
|
|||
299
Godofsin
26.02.14
✎
06:29
|
(293) =)))
|
|||
300
kotokent
26.02.14
✎
06:30
|
(298) хороший вопрос
|
|||
301
Godofsin
26.02.14
✎
06:31
|
(300) Я бы сказал, ключевой...
|
|||
302
kotokent
26.02.14
✎
06:33
|
(301) как же это сделать)))
|
|||
303
kotokent
26.02.14
✎
06:33
|
?
|
|||
304
Wobland
26.02.14
✎
06:33
|
(300) затянись поглубже и представь себя прогуливающимся по библиотеке с запиской в руке. в записке - наименование книги, она искрится и переливается. книги - элементы справочника. они большие и фиолетовые, угрожающе напирают на тебя со всех сторон. только самый смекалистый человек способен найти нужную книгу и выбраться из этого лабиринта
|
|||
305
Godofsin
26.02.14
✎
06:34
|
(304) ржу чота ))))
|
|||
306
kotokent
26.02.14
✎
06:35
|
(305) (304) скажите как лучше сделать, запросное значение преобразовать в строковое или Экселевское в Ссылку?
|
|||
307
Godofsin
26.02.14
✎
06:36
|
(302) ты литературу вообще не читаешь? Открой книжки наконец, там много чо интересного написано
|
|||
308
Godofsin
26.02.14
✎
06:36
|
(306) Экселевское в ссылку
|
|||
309
kotokent
26.02.14
✎
06:36
|
(308) вооот, но я нашел только как в строковое преобразовать
|
|||
310
Godofsin
26.02.14
✎
06:38
|
СсылкаВЛес = Справочники.ТвоиБонусы.НайтиПоНаименованию(ТвоеНаименование);
|
|||
311
kotokent
26.02.14
✎
06:40
|
(310) так эксель это таблица значений
|
|||
312
Wobland
26.02.14
✎
06:40
|
+(310) выдаст первое встречное, если найдёт
|
|||
313
Godofsin
26.02.14
✎
06:41
|
(312) Пофиг
|
|||
314
Godofsin
26.02.14
✎
06:42
|
(311) Эксель, млять, это продукт компании Майкрософт и он ссука ни хера не таблица значений.
|
|||
315
kotokent
26.02.14
✎
06:45
|
(314) (312) что то не понял
|
|||
316
Wobland
26.02.14
✎
06:49
|
предрекаю: ветка после 500го поста опять превратится в тыкву, так и не побывав каретой
|
|||
317
Godofsin
26.02.14
✎
06:49
|
(316) и это печально (((
|
|||
318
kotokent
26.02.14
✎
06:50
|
(316) (317) ну скажите тогда как сделать это?
|
|||
319
Wobland
26.02.14
✎
06:53
|
(318) да ты задрал. не смешно уже ни черта
|
|||
320
kotokent
26.02.14
✎
06:55
|
(319) да я е понимаю как это сделать, ты думаешь я сам этому ра
|
|||
321
kotokent
26.02.14
✎
06:58
|
(320) мне сказали там просто, но я не понимаю как
|
|||
322
Godofsin
26.02.14
✎
07:00
|
(321) Это не твое, забей. Займись тем, в чем ты хоть что-то понимаешь.
|
|||
323
kotokent
26.02.14
✎
07:02
|
(322) так у меня задача стоит, надо выполнить, помоги, ты мне написал но я не понял как это применить для моего экселя
|
|||
324
Wobland
26.02.14
✎
07:05
|
(323) знаешь, почему я никогда не буду работать грузчиком и иметь задачи, предполагающие подъём тяжестей? мне здоровье не позволяет. так же и тебе развитие организма не позволяет заниматься умственной работой
|
|||
325
kotokent
26.02.14
✎
07:08
|
(324) я сделал с Бонусом, теперь у меня "план" в запросе число, а в экселе строка... надо преобразовать...
|
|||
326
kotokent
26.02.14
✎
07:17
|
дела, это тоже не просто
|
|||
327
kotokent
26.02.14
✎
07:43
|
подскажите как, а то он мне возвращает набор цифр и букв
|
|||
328
Wobland
26.02.14
✎
07:53
|
с точками и тире я бы помог, изучал морзянку
|
|||
329
kotokent
26.02.14
✎
08:14
|
(328) Я УЖЕ ПЕРЕВЕЛ, ТЕПЕРЬ ПРОБЛЕМА В ДРУГОМ...
Отбор2 = Новый Структура; Отбор2.Вставить("План", СтрокаEx.План); НайденыйПлан = Табл1.НайтиСтроки(Отбор2); Если СтрокаEx.План <> //Здесь надо чтобы он с числом самим сравнивал из "НайденыйПлан", а он с масивом сравнивает Тогда Сообщить ("Надо создавать новый Эксель и заблокировать!!!"); КонецЕсли |
|||
330
kotokent
26.02.14
✎
08:16
|
Пишу так:
Если СтрокаEx.План <> НайденыйПлан.План Тогда А он ругается {Обработка.ИА_ПомошникСозданияДокументовПланМагазина.Форма.ПомошникСозданияПлановМагазинов.Форма(278)}: Поле объекта не обнаружено (План) Если СтрокаEx.План <> НайденыйПлан.План Тогда |
|||
331
Wobland
26.02.14
✎
08:16
|
какая из восьмисот найденных строк имеется в виду?
|
|||
332
kotokent
26.02.14
✎
08:17
|
(331) СтрокаEx.План
|
|||
333
kotokent
26.02.14
✎
08:20
|
(332) он у нас отобран ранее
|
|||
334
Wobland
26.02.14
✎
08:20
|
а с чем сравнивается?
|
|||
335
kotokent
26.02.14
✎
08:26
|
(334) я написал так:
Если СтрокаEx.План <> НайденыйПлан[0].План но когда он доходит до значения которого нет в документе, ругается Обработка.ИА_ПомошникСозданияДокументовПланМагазина.Форма.ПомошникСозданияПлановМагазинов.Форма(278)}: Индекс находится за границами массива Если СтрокаEx.План <> НайденыйПлан[0].План Тогда |
|||
336
Wobland
26.02.14
✎
08:27
|
это почему это?
|
|||
337
Wobland
26.02.14
✎
08:27
|
>Помошник
двоешник |
|||
338
kotokent
26.02.14
✎
08:30
|
(336) блин как его проверить на незаполненость
|
|||
339
Wobland
26.02.14
✎
08:31
|
(338) что это такое?
|
|||
340
kotokent
26.02.14
✎
08:33
|
(339) ну он ходит по Экселю (СтрокаEx.План) и по документу, если строки совпадают то все нормально, если нет то надо сообщение вывести как у меня, а если в документе нет этой строки как в Экселе то он так ругается
|
|||
341
Wobland
26.02.14
✎
08:34
|
а незаполненность массива что такое?
|
|||
342
kotokent
26.02.14
✎
08:35
|
(341) пустаястрока
|
|||
343
Wobland
26.02.14
✎
08:35
|
какая строка?
|
|||
344
kotokent
26.02.14
✎
08:36
|
(343) NULL&
|
|||
345
kotokent
26.02.14
✎
08:36
|
?
|
|||
346
Wobland
26.02.14
✎
08:37
|
что за нулл?
|
|||
347
kotokent
26.02.14
✎
08:37
|
(346) я в нете найти не могу
|
|||
348
Wobland
26.02.14
✎
08:38
|
это отсутствие мозга, а не нулл
|
|||
349
kotokent
26.02.14
✎
08:39
|
(348) ну как всегда
|
|||
350
kotokent
26.02.14
✎
08:40
|
(349) нет бы подсказать
|
|||
351
Wobland
26.02.14
✎
08:44
|
твой спинной мозг не может понять смысл вопросов?
|
|||
352
kotokent
26.02.14
✎
08:46
|
(351) конкретно задай, как новичку
|
|||
353
Wobland
26.02.14
✎
08:48
|
незаполненность массива что такое?
|
|||
354
kotokent
26.02.14
✎
08:50
|
(353) если честно я не могу найти конкретной информации
|
|||
355
kotokent
26.02.14
✎
08:51
|
(353) неопределено
|
|||
356
razlagator
26.02.14
✎
08:52
|
Если Массив.Количество() = 0 Тогда ....
|
|||
357
kotokent
26.02.14
✎
08:54
|
(356) это будет действовать если прошол цикл над другими записями?
|
|||
358
kotokent
26.02.14
✎
08:56
|
(356) таже ошибка
|
|||
359
razlagator
26.02.14
✎
08:56
|
(357) моя твоя не понимать
|
|||
360
Godofsin
26.02.14
✎
08:56
|
(357) Тебе сколько лет?
|
|||
361
razlagator
26.02.14
✎
08:57
|
(358) покажи код
|
|||
362
Godofsin
26.02.14
✎
08:58
|
(361) не думаю, что ты хочешь это увидеть...
|
|||
363
Wobland
26.02.14
✎
08:59
|
+(362) мы все умрём
|
|||
364
kotokent
26.02.14
✎
09:00
|
Для каждого СтрокаEx ИЗ СтрокиExcel Цикл
Отбор1 = Новый Структура; Отбор1.Вставить("Бонус", СтрокаEx.Бонусы); НайденыйБонус = Табл1.НайтиСтроки(Отбор1); Если НайденыйБонус = Неопределено Тогда Сообщить ("Создаем новый документ ""План"""); Иначе Отбор2 = Новый Структура; Отбор2.Вставить("План", СтрокаEx.План); НайденыйПлан = Табл1.НайтиСтроки(Отбор2); Если СтрокаEx.План <> НайденыйПлан[0].План ИЛИ НайденыйПлан.Количество()= 0 Тогда Сообщить ("Надо создавать новый Эксель и заблокировать!!!"); КонецЕсли; КонецЕсли; КонецЦикла; |
|||
365
Wobland
26.02.14
✎
09:01
|
и почему тут ошибка?
|
|||
366
kotokent
26.02.14
✎
09:03
|
(365) незнаю, это я у вас спрашиваю и какие нибудь предложения по ее решению
|
|||
367
Wobland
26.02.14
✎
09:04
|
бесполезно спрашивать, как работает НайтиСтроки(), да?
|
|||
368
razlagator
26.02.14
✎
09:04
|
Для каждого СтрокаEx ИЗ СтрокиExcel Цикл
Отбор1 = Новый Структура; Отбор1.Вставить("Бонус", СтрокаEx.Бонусы); НайденыйБонус = Табл1.НайтиСтроки(Отбор1); Если НайденыйБонус = Неопределено Тогда Сообщить ("Создаем новый документ ""План"""); Иначе Отбор2 = Новый Структура; Отбор2.Вставить("План", СтрокаEx.План); НайденыйПлан = Табл1.НайтиСтроки(Отбор2); Если НайденыйПлан.Количество()<> 0 Тогда Если СтрокаEx.План <> НайденыйПлан[0].План Тогда Сообщить ("Надо создавать новый Эксель и заблокировать!!!"); КонецЕсли; КонецЕсли КонецЕсли; КонецЦикла; |
|||
369
razlagator
26.02.14
✎
09:05
|
что такое Табл1?
|
|||
370
Wobland
26.02.14
✎
09:06
|
(369) вот тут мы точно все умрём
|
|||
371
Wobland
26.02.14
✎
09:06
|
+(370) косой запрос
|
|||
372
razlagator
26.02.14
✎
09:07
|
или лучше так
Для каждого СтрокаEx ИЗ СтрокиExcel Цикл Отбор1 = Новый Структура; Отбор1.Вставить("Бонус", СтрокаEx.Бонусы); НайденыйБонус = Табл1.НайтиСтроки(Отбор1); Если НайденыйБонус = Неопределено Тогда Сообщить ("Создаем новый документ ""План"""); Иначе Отбор2 = Новый Структура; Отбор2.Вставить("План", СтрокаEx.План); НайденыйПлан = Табл1.НайтиСтроки(Отбор2); Если НайденыйПлан.Количество()<> 0 Тогда Если СтрокаEx.План <> НайденыйПлан[0].План Тогда Сообщить ("Надо создавать новый Эксель и заблокировать!!!"); КонецЕсли; Иначе Сообщить("План не найден!!!"); КонецЕсли КонецЕсли; КонецЦикла; |
|||
373
Wobland
26.02.14
✎
09:07
|
ТуеваХучаНайденныхПланов = Табл1.НайтиСтроки(Отбор2);
|
|||
374
kotokent
26.02.14
✎
09:09
|
(373) там всего он 1, я не полный же код выложил, перед этим там еще отбор по магазину идет
|
|||
375
Wobland
26.02.14
✎
09:10
|
ТуеваХучаНайденныхПлановВозможноДажеИзОднойШтуки = Табл1.НайтиСтроки(Отбор2);
|
|||
376
kotokent
26.02.14
✎
09:18
|
(375) я же перед этим еще и по бонусу их отбираю,
вопрос возник, когда массив возвращает значение "Неопределено" |
|||
377
brato4karik
26.02.14
✎
09:18
|
Доброе утро всем, я чаек уже заварил)) щам у нас народ уже подсаживается.
P.S. Напоминает серию из Интернов где Охлабыстин им намеками помогал диагнозы ставить)). У нас все болеют за ТС, и желают ему добиться результата а потом что бы он нам всем код показал |
|||
378
Wobland
26.02.14
✎
09:19
|
(376) и чты с этим вопросом сделал?
|
|||
379
Wobland
26.02.14
✎
09:20
|
(377) у него обед то ли в 1230, то ли в 1300
|
|||
380
Wobland
26.02.14
✎
09:20
|
(379) по-нашенски, по мск+3
|
|||
381
kotokent
26.02.14
✎
09:21
|
(378) просто у меня неопределено никогда не появится в строке:
Если НайденыйБонус = Неопределено Тогда там надо написать, по моему Если НайденыйБонус.Количество() = 0 Тогда верно? |
|||
382
Wobland
26.02.14
✎
09:23
|
в рот мне ноги, Дэвид Блейн, как ты это сделал?
|
|||
383
brato4karik
26.02.14
✎
09:24
|
(381) НайденыйБонус какого типа? Из отладчика нам сюда копи паст
да кстати тут баннер постоянно крутиться бесплатный курс Гилева 20 часов и ты программист, кликни туда |
|||
384
Wobland
26.02.14
✎
09:26
|
(383) я тут на днях просмотрел "Большую Перемену". там всего 4 часа, правда, но никаких намёков на учителя истории я в себе не обнаружил
|
|||
385
brato4karik
26.02.14
✎
09:27
|
(384) Ну ты сравнил себя и ТС )) Шутка ли ))
|
|||
386
kotokent
26.02.14
✎
10:53
|
(382) что именно???
(383) НайденыйБонус массив |
|||
387
brato4karik
26.02.14
✎
11:01
|
Ох я уж и забыл если честно в чем у тебя трудность то?
|
|||
388
kotokent
26.02.14
✎
11:16
|
(387) теперь проблема в другом, как объединить 2 процедуры чтобы работало все нормально
|
|||
389
kotokent
26.02.14
✎
11:16
|
очень не понятно и сложно
|
|||
390
Wobland
26.02.14
✎
11:20
|
бедолага
|
|||
391
brato4karik
26.02.14
✎
11:21
|
Ну нужно объединить, объедини, одну за другой вызывай или вообще все в одну помести, потом глазами пробегись по ней, и исправь, упрости, приведи к приемлемому виду. Если конечно этот код вызовет в тебе такое желание
|
|||
392
Wobland
26.02.14
✎
11:24
|
(388) делаешь одну новую, берёшь кусок из первой процедуры, перетаскиваешь в новую, потом так же со второй. повторяешь процесс, пока процедуры не кончатся. потом переставляешь строки в результирующей процедуре как тебе вздумается.
эта техника называется техникой пьяной мартышки |
|||
393
kotokent
26.02.14
✎
11:25
|
(391) (392) я думаю создание нового документа поместить в функцию и потом ее вызывать когда надо
|
|||
394
brato4karik
26.02.14
✎
11:27
|
Слова правильные, и последовательность в предложении тоже не вызывает подозрений
|
|||
395
kotokent
26.02.14
✎
11:28
|
(394) ну что вы так ко мне, я самоучка же :D
|
|||
396
kotokent
26.02.14
✎
11:29
|
столько мысле, столько мыслей, даже незнаю как что делать )))
|
|||
397
kotokent
26.02.14
✎
11:30
|
там в 2-х процедурах код похожий, только одна работает с документом который новы, а вторая проверят поля
|
|||
398
Wobland
26.02.14
✎
11:31
|
дорогие друзья, мы продолжаем следить за ситуацией на трибуне стадиона "Мандрагена". на помост выходит kotokent. сейчас он будет помещать в функцию. пожелаем ему успехов
|
|||
399
kotokent
26.02.14
✎
11:32
|
(398) спасибо друзья за ваше доверие
|
|||
400
Wobland
26.02.14
✎
11:33
|
щетыреста!
|
|||
401
kotokent
26.02.14
✎
11:34
|
к стати, кто то может рассказать как этот экселевский документ перезаписать и заблокировать при необходимости, и потом ссылку вывести на перезаписаный документ
|
|||
402
Wobland
26.02.14
✎
11:35
|
это зачем это?
|
|||
403
brato4karik
26.02.14
✎
11:36
|
(399) Ты учти, после того как ты закончишь, обязательно нам покажи этот код, конфигурацию, обработку, что ты там делаешь. Это то чего ради здесь собирается столько народу.
P.S. Шутить по поводу надежности кода мы не будем, так как по мнению моих коллег он с легкостью может соперничать с кодом марсоходов, навигации и расчета траектории баллистических ракет. |
|||
404
Godofsin
26.02.14
✎
11:38
|
(400) ахренеть!
|
|||
405
Godofsin
26.02.14
✎
11:39
|
Пора бы уже ветку про Украину по кол-ву постов догонять
|
|||
406
kotokent
26.02.14
✎
11:39
|
(404) (403) (402) потому что надо по делу разговаривать и не просто переписываться
|
|||
407
brato4karik
26.02.14
✎
11:41
|
Ну да чегой то мы тут развели, давай жахнем. Так какая у тебя там сложность?
|
|||
408
Wobland
26.02.14
✎
11:42
|
(403) я его уже просил как-то о таком. на предложенном мной (отсюда, с табуретки и вслепую) тестовом наборе данных поделился на ноль
|
|||
409
Wobland
26.02.14
✎
11:42
|
(407) где-то 75 из 80
|
|||
410
Wobland
26.02.14
✎
11:43
|
(409) не так. O(n!)
|
|||
411
kotokent
26.02.14
✎
11:44
|
(410) что??? ты о чем
|
|||
412
brato4karik
26.02.14
✎
11:45
|
(410) Ну тут надо разрядность ограничивать, а то не дай бог он решит задачу такой сложности, придется считать его ребенком Ноосферы или чем то подобным
|
|||
413
brato4karik
26.02.14
✎
11:46
|
(412) предположительно что n велико
|
|||
414
Wobland
26.02.14
✎
11:47
|
(413) не больше 65 тыщ, эксель как-то болеет от большего вроде
|
|||
415
badboychik
26.02.14
✎
12:02
|
(414) в экселе 2007 максимум - ~2 млн
|
|||
416
kotokent
26.02.14
✎
12:05
|
чтото он у меня зацикливается прямо жестко, долго промеряет по нескольку раз
|
|||
417
13_Mult
26.02.14
✎
12:05
|
(58) Согласен войти в круг бетта тестеров.
|
|||
418
brato4karik
26.02.14
✎
12:05
|
так ты сам писал, что нужно несколько раз проверять
|
|||
419
kotokent
26.02.14
✎
12:06
|
(418) надо один раз проверять, нахера по одним и темже значеним бегать по 5 раз
|
|||
420
brato4karik
26.02.14
✎
12:09
|
(419) Никто не знает почему ты так написал.
|
|||
421
kotokent
26.02.14
✎
12:10
|
(420) как я понял, он бегает столько раз по одной записи, сколько находит магазинов определенного названия
|
|||
422
brato4karik
26.02.14
✎
12:11
|
Ну такое возможно, почему бы и нет
|
|||
423
Wobland
26.02.14
✎
12:12
|
этот цикл мы зациклим циклом ©
|
|||
424
kotokent
26.02.14
✎
12:12
|
(422) (423) где то я облажался
|
|||
425
Wobland
26.02.14
✎
12:13
|
(424) правда?
|
|||
426
kotokent
26.02.14
✎
12:14
|
(425) не надо говорить что при выборе профессии
|
|||
427
badboychik
26.02.14
✎
12:18
|
(424) мы догадались еще в (0)
|
|||
428
Wobland
26.02.14
✎
12:19
|
о какой профессии ты сейчас? программистом тебе не стать
|
|||
429
kotokent
26.02.14
✎
12:20
|
(428) кто знает... кто знает
|
|||
430
Wobland
26.02.14
✎
12:24
|
а ты просто поверь. учиться ты не научился, а без этого никак
|
|||
431
brato4karik
26.02.14
✎
12:25
|
(429) Давай по теме, что тебя в коде смущает?
В войну были сыны полка. |
|||
432
kotokent
26.02.14
✎
12:45
|
(431) не могу сообразить, как один цикл убрать чтобы потом код работал без проблем
|
|||
433
Wobland
26.02.14
✎
12:46
|
о, это препросто. найди ненужный цикл и удали его
|
|||
434
kotokent
26.02.14
✎
12:50
|
(433) там путаница получилась, его нельзя удалить так как он выбирает магазин, а потом из этих магазинов выбираются бонусы, а потом план и это все сравнивается
|
|||
435
Wobland
26.02.14
✎
12:53
|
ну тогда добавь один ненужный цикл
|
|||
436
kotokent
26.02.14
✎
12:59
|
(435) куда
|
|||
437
Wobland
26.02.14
✎
13:00
|
ну как куда? туда, откуда потом будешь убирать
|
|||
438
brato4karik
26.02.14
✎
13:03
|
ну может бонус и план в одном цикле пробегать, они наверняка в одной строке для каждого магазина просто в соседних колонках.
|
|||
439
kotokent
26.02.14
✎
13:05
|
(438) магазин один, только по одному магазину строк много
|
|||
440
Wobland
26.02.14
✎
13:06
|
документов тьма по магазину с таким названием
|
|||
441
kotokent
26.02.14
✎
13:08
|
Для каждого СтрокаТаб ИЗ ТаблицаЗначений1 Цикл
.... Отбор = Новый Структура; Отбор.Вставить("Магазин", СтрокаТаб.Магазин); СтрокиExcel = ТаблицаЗначений1.НайтиСтроки(Отбор); Для каждого СтрокаEx ИЗ СтрокиExcel Цикл ........... вот тут он у меня несколько раз ходит по одним и темже значениям |
|||
442
brato4karik
26.02.14
✎
13:11
|
Так если СтрокаТаб.Магазин совпадает то не выполняй поиск, или в ТаблицаЗначений1 сделай так что бы Магазины не повторялись
|
|||
443
kotokent
26.02.14
✎
13:13
|
(442) если ты про "Свернуть", то я потом не могу значения от туда взять
|
|||
444
Wobland
26.02.14
✎
13:18
|
>анализируются строки документа "План магазина"
и тут внезапно приходит котокент и достаёт откуда-то ещё магазинов |
|||
445
Серго62
26.02.14
✎
13:50
|
(429) Запугиваешь?
|
|||
446
kotokent
26.02.14
✎
13:51
|
(444) (442) (445) как сделать чтобы документ заблокировался для редактирования
|
|||
447
Wobland
26.02.14
✎
13:56
|
правильный ответ: не подпускать к документу котокента да и всё
|
|||
448
brato4karik
26.02.14
✎
14:02
|
(446) Нужно уточнить какой документ? (Если бумажный, то можно в тумбочку запереть)
|
|||
449
kotokent
26.02.14
✎
14:08
|
ну а серьезно, мне при определенном условии надо один заблокировать для изменений и создать другой
|
|||
450
Wobland
26.02.14
✎
14:09
|
установи в нём в признаки "Откорректирован" и "Документ корректировка"
|
|||
451
Wobland
26.02.14
✎
14:09
|
хотя я бы Откорректирован переименовал в Закрыт
|
|||
452
kotokent
26.02.14
✎
14:11
|
(450) ну с реквизиты на форме создал, теперь надо с обработки их сделать ссылку и блокировку
|
|||
453
brato4karik
26.02.14
✎
14:12
|
Как в КВН задавай умные вопросы получай правильные ответы ...
|
|||
454
brato4karik
26.02.14
✎
14:13
|
Какую блокировку? На чтение? Смотреть можно а изменять нельзя? Что делать с движениями документа которые ты "блокируешь", какие движения будет формировать новый документ?
|
|||
455
Wobland
26.02.14
✎
14:14
|
(452) а теперь затянись ещё, почувствуй себя обработкой и прикрой глаза. видишь форму обрабатываемого документа?
|
|||
456
kotokent
26.02.14
✎
14:17
|
(455) да.... виже
|
|||
457
Wobland
26.02.14
✎
14:25
|
поэтому я за алкоголь. с ним не мерещится всякого
|
|||
458
brato4karik
26.02.14
✎
14:29
|
(457) Вкусный крепкий алькоголь
|
|||
459
kotokent
26.02.14
✎
14:33
|
(454) смотреть можно, изменять нельзя
|
|||
460
kotokent
26.02.14
✎
14:36
|
как это сделать, то?
|
|||
461
kotokent
26.02.14
✎
14:43
|
и еще надо ссылку получить на новый созданый документ и занести ее в поле
|
|||
462
kotokent
26.02.14
✎
14:44
|
и про блокировать надо срочно сделать
|
|||
463
brato4karik
26.02.14
✎
14:44
|
ну для практики специально для обучения, посоветую при открытии формы проверять нужный реквизит и пробегать циклом по всем элементам формы устанавливать их свойство доступность в ложь
|
|||
464
brato4karik
26.02.14
✎
14:44
|
ссылку на новый документ ты получишь после того как его создашь
|
|||
465
brato4karik
26.02.14
✎
14:45
|
(462) А почему такая срочность то?
|
|||
466
Серго62
26.02.14
✎
15:38
|
(465) Наверно зачет сдавать надо или курсач или чё он там сдает, а то двойку поставят...
|
|||
467
Wobland
26.02.14
✎
15:42
|
да прикалывается кто-то. нельзя быть взаправду настолько тупым
|
|||
468
Серго62
26.02.14
✎
15:51
|
(467) Он не тупой, он просто ленивый, ему проще нагуглить решение, а если не получилось нагуглить, то спросить на форуме, чем самому головой думать и книжки читать - не царское это дело. Такие люди реально бывают.
|
|||
469
Wobland
26.02.14
✎
15:54
|
(468) ты видал, как он вопросы ставит/задаёт/формулирует? это недоразвитость разума, а не лень
|
|||
470
Серго62
26.02.14
✎
15:56
|
(469) Так это все от лени. Если ниче не делать, то как разум может развиться?
|
|||
471
Wobland
26.02.14
✎
15:57
|
хм, что первично - тупость или лень?
|
|||
472
Серго62
26.02.14
✎
15:58
|
(471) Да фиг его знает - философский вопрос...
|
|||
473
Wobland
26.02.14
✎
15:58
|
если в силу ограниченности не понимать, что лень мешает развиваться, то это разум такой ;)
|
|||
474
brato4karik
26.02.14
✎
16:04
|
(472) Мм приятный вопрос, через час можно будет подумать
|
|||
475
Wobland
26.02.14
✎
16:09
|
надо уже дожать ветку, и пускай тонет. что я впустую пророчествовал? ;)
|
|||
476
brato4karik
26.02.14
✎
16:12
|
ну надо до завтра ждать, ведь еще не решенным остался вопрос о "блокировке" документа,создании нового, последующей оптимизации кода. И интересно это уже боевое у него задание или все таки тест?
|
|||
477
Wobland
26.02.14
✎
16:20
|
это всё в хранилище. думаю, при внедрении у внедряльшика достанет ума посмотреть внутрь и откатить
|
|||
478
kotokent
27.02.14
✎
06:23
|
как ссылку получить на созданый документ?
|
|||
479
Wobland
27.02.14
✎
06:23
|
записать не хочешь?
|
|||
480
kotokent
27.02.14
✎
06:26
|
(479) документ создал и как ссылку на него полк\учить?
|
|||
481
kotokent
27.02.14
✎
06:37
|
у меня есть в коде такая строчка
НоваяСтрокаТЧ.ПланМагазина = НовыйПланМагазина.Ссылка; можно из нее ссылку получить? |
|||
482
Wobland
27.02.14
✎
06:38
|
разрешаю
|
|||
483
kotokent
27.02.14
✎
06:56
|
(482) а как
|
|||
484
Wobland
27.02.14
✎
06:59
|
нужно как-то себя заставить
|
|||
485
kotokent
27.02.14
✎
07:03
|
(484) как ее от туда вытащить и поместить в переменую на другой форме
|
|||
486
Wobland
27.02.14
✎
07:06
|
куда?
|
|||
487
kotokent
27.02.14
✎
07:11
|
(486)
Документы.ИА_ПланМагазина.ИА_ДокументКорректировка = НовыйПланМагазина.Ссылка; но он ругается, надо к реквизиту формы документа обратиться из этой обработки, но что то не выходит |
|||
488
Wobland
27.02.14
✎
07:13
|
а ты поднатужься. если так же не будет выходить, ступай к проктологам
|
|||
489
kotokent
27.02.14
✎
07:14
|
(488) ну я хоть на правильном пути?
|
|||
490
Wobland
27.02.14
✎
07:22
|
нет
|
|||
491
kotokent
27.02.14
✎
07:26
|
(490) ну подскажи тогда как?
|
|||
492
Wobland
27.02.14
✎
07:27
|
Директору ИП Иванов Л.В.
Иванову Леониду Викторовичу От (должность) Петрова Игоря Николаевича Заявление Прошу уволить меня с занимаемой должности по собственному желанию "___" _____________ 20___года. Дата (___)___________2____г. Подпись__________________ |
|||
493
kotokent
27.02.14
✎
07:40
|
(492) смешно
|
|||
494
kotokent
27.02.14
✎
07:48
|
вообще что то завис
|
|||
495
Godofsin
27.02.14
✎
07:58
|
(493) совсем не смешно. Самый наилучший тебе совет за 500 постов.
|
|||
496
Wobland
27.02.14
✎
08:00
|
а если наилучший совет является ещё и смешным, то и пользы от него вдвойне
|
|||
497
Web00001
27.02.14
✎
08:18
|
Было дело, лет пять я в таких случаях брался с энтузиазмом и разруливал вопрос, писал почти весь код за новичка объясняя что к чему, хотел помочь. Как результат, оказывалось что человек ниче не понял, из того, что я объяснял и ждет что я буду писать код за него дальше. Бросил это гиблое дело.
|
|||
498
kotokent
27.02.14
✎
08:20
|
лучше бы помогли
|
|||
499
Web00001
27.02.14
✎
08:20
|
снизу баннер "Программирование в 1С - за 21 день", CRM разумеется ты не напишешь, но вопросов плана:
"как ссылку получить на созданый документ" Не будет абсолютно точно. |
|||
500
Wobland
27.02.14
✎
08:21
|
ПИСОТ!
|
|||
501
Web00001
27.02.14
✎
08:21
|
(498) см (497)
|
|||
502
moon_sparckle
27.02.14
✎
08:22
|
у котокента железные нервы. завидоваю....
|
|||
503
Wobland
27.02.14
✎
08:22
|
(499) у него проблема в другом: он не хочет
|
|||
504
kotokent
27.02.14
✎
08:24
|
(503) я уже все облазил и не могу ничего найти
|
|||
505
Web00001
27.02.14
✎
08:27
|
(504) чего не можешь? http://xn----1-bedvffifm4g.xn--p1ai/prog1C-21days/lp1/?utm_source=mista_1st&utm_campaign=mista_devin21days
полностью бесплатно :) правда 21 день нужен |
|||
506
kotokent
27.02.14
✎
08:28
|
(505) надо записать ссылку на документ который создал и записать эту ссылку в реквизит другого документа
|
|||
507
Web00001
27.02.14
✎
08:34
|
(506)надо понять, что не в этом проблема. Это как попробовать поменять ремень ГРМ, если ты до этого никогда под капот не заглядывал и сокрушаться, что у тебя нет нужного ключа.
Ну получишь ты ссылку, следом вылезет следующая проблема. И так будет очень долго. Что у тебя проблема с ключом стало ясно еще из (0), тебе говорят ты хоть на курсы сходи, тогда вопросов станет меньше где то на 1000штук. Будут вопросы не плана "как открутить гайку" а "как правильно отрегулировать натяжение ремня". |
|||
508
kotokent
27.02.14
✎
08:35
|
(507)
НовыйПланМагазина.ИА_ДокументКорректировка = НовыйПланМагазина.ИА_Магазин.Ссылка; НовыйПланМагазина.ИА_Откорректирован = Истина; НовыйПланМагазина.Заблокировать(); я вот так пишу но он реквизиты не меняет |
|||
509
kotokent
27.02.14
✎
08:36
|
(507) ни один не меняте
|
|||
510
Web00001
27.02.14
✎
08:37
|
(508)да собственно и не должен. С чего бы ради?
|
|||
511
kotokent
27.02.14
✎
08:40
|
(510) ну а как тогда
|
|||
512
Web00001
27.02.14
✎
08:44
|
(511) ответ в (492), причина в (497)
Ответ на самом деле элементарен. Попробуй таки пройти хоть какие то основы. |
|||
513
kotokent
27.02.14
✎
08:50
|
(512) мне надо сегодня уже показывать, я не могу это сделать
|
|||
514
Wobland
27.02.14
✎
08:54
|
вазелином в деканате я рисую слово "хватит"
|
|||
515
Web00001
27.02.14
✎
08:59
|
(513)Зачем брался?
ок Изменить данные можно только у объекта. ПолучитьОбъект() от ссылки тебе поможет. Только это одна строчка кода, а дальше делать будешь че? |
|||
516
kotokent
27.02.14
✎
09:03
|
(515) он у меня уже этим кодом записывает, только блокировка для изменения не работае, как ее сделать
|
|||
517
Web00001
27.02.14
✎
09:05
|
Вот я и говорю, этот вопрос решен, дальше следующий, потом еще один, потом тут не работает, потом там не то, тут не это. Ну и тд.
|
|||
518
Godofsin
27.02.14
✎
09:06
|
(514) ))))))))))))))
|
|||
519
catena
27.02.14
✎
09:15
|
(516)Ты этой сторчкой "НовыйПланМагазина.Заблокировать();" - хочешь заблокировать от изменения?
|
|||
520
Web00001
27.02.14
✎
09:18
|
(519)Ему самому не очень понятно, что ему надо.
Сначала: >>я вот так пишу но он реквизиты не меняет потом оказывается: >>он у меня уже этим кодом записывает И вот попробуй разбери, чего он хочет и действительно ли он хочет именно этого. |
|||
521
catena
27.02.14
✎
09:28
|
(520)Да я с персонажем уже знакома, я все пытаюсь его логику понять. Ну не в случайном же порядке у него нейроны взаимодействуют.
|
|||
522
brato4karik
27.02.14
✎
09:38
|
Все доброе утро)
|
|||
523
kotokent
27.02.14
✎
10:57
|
(520) (521) (522) я просто там реквизиты менял после записи, потом переделал, теперь блокировку надо настроить, чтобы документ нельзя было редактировать
|
|||
524
kotokent
27.02.14
✎
11:00
|
(523) и еще, это надо заблокировать старый документ, а он с запроса вытянут
|
|||
525
kotokent
27.02.14
✎
11:01
|
как с запроса вытянуть документ?
|
|||
526
catena
27.02.14
✎
11:50
|
(524)Перескажи своими словами описание метода Заблокировать(), пожалуйста.
|
|||
527
Wobland
27.02.14
✎
11:56
|
уплыла ветка, еле добрался
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |