Автор Тема: Составление списка из каталога  (Прочитано 8892 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн ra4o [?]

  • Продвинутый
  • ***
  • Сообщений: 531
  • Репутация: 84
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #30, Отправлен: Ноябрь 14, 2016, 16:18:42 »
Цитировать
то потом новые параметры при Редактировании не на своих местах
Всё верно, это не баг, а логика работы скрипта. Дело в том, что предметы каталога хранятся в ini файле и название параметра предмета есть ключ , количество - значение ключа. Невозможно изменить название ключа, что-бы добиться этого скрипт удаляет ключ со старым именем и создаёт с новым и новое значение попадает в конец списка, смещая все позиции , которые ранее были ниже изменяемой на строку выше.
Остальное сейчас проверю.
Цитировать
баг2= баг с пустыми Предметами так же продолжает наблюдаться.
Исправил. HotKey тоже чуток подправил, пробуйте.
« Последнее редактирование: Ноябрь 14, 2016, 16:39:37 от ra4o »

Русское сообщество AutoIt

Re: Составление списка из каталога
« Ответ #30 Отправлен: Ноябрь 14, 2016, 16:18:42 »

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #31, Отправлен: Ноябрь 14, 2016, 18:56:11 »
Цитировать
то потом новые параметры при Редактировании не на своих местах
Всё верно, это не баг, а логика работы скрипта. Дело в том, что предметы каталога хранятся в ini файле и название параметра предмета есть ключ , количество - значение ключа. Невозможно изменить название ключа, что-бы добиться этого скрипт удаляет ключ со старым именем и создаёт с новым и новое значение попадает в конец списка, смещая все позиции , которые ранее были ниже изменяемой на строку выше.
1. то что при удалении все что ниже должны сдвинуться на эту одну строчку - само-собой логично.
проблема в том что после удаления ключа "для всех" новые ключи начнают добавляться толи только в начало списка параметров, толи "хаотично"(несколкьо в начало, остальные в конец. пока не могу вычислить от чего зависит).
наблюдал это до того как писал ответ, но при повторной проверке не повторилось.

2. понимаю что это морока, но нельзя ли сделать чтоб при Переименовании перезаписывались все параметры(ключи) Предмета.?
тобишь есть Предмет с Параметрами с1,с2,с3,с4,с5; переименовываем с3 в м3, при этом скрипт сохраняет в переменную все ключи этого Предмета, формирует последовательно новый список параметров Предмета заменяя с3 = с1,с2,м3,с4,с5 и потом сохраняет в Предмет. не уверен, но по-идее это не должно приводить к стиранию и созданию Предмета заново, и в такой способ порядок не будет нарушаться.(как Предметов в каталоге, так и параметров в Предмете)

 к слову, в такой же способ по-идее могло бы работать удаление - построчно в переменной формируя новый список ключей, исключая удалённый.(думаю сейчас происходит просто удаление ключа и само-собой удаление пустых строк в .ini)

вот все это подвести под действия "для всех", тут настоящее "уффф".


Добавлено: Ноябрь 14, 2016, 19:22:47
зачёркнутое поведение подтверждено, параметры добавляются не по порядку. сделал скрины для наглядности.
открыл программу - Содал новый катаог - добавл 4 предмета с параметрами на скринах - причём q11 отличается от q1 3м параметром, w11 отличается от w1 тоже 3м параметром(в обоих случаях создавал q1 - Копировать - q11 - создать параметр a3; w1 - Копировать - w11 - +параметр s3). открываю 2й или 4й Предмет и отличительные 3и параметры вверху списка.


Внимание: Для просмотра прикреплённых файлов необходимо Войти или Зарегистрироваться
« Последнее редактирование: Ноябрь 14, 2016, 19:22:50 от eil, Причина: Объединение сообщений »

Оффлайн ra4o [?]

  • Продвинутый
  • ***
  • Сообщений: 531
  • Репутация: 84
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #32, Отправлен: Ноябрь 14, 2016, 20:34:58 »
Цитировать
нельзя ли сделать чтоб при Переименовании перезаписывались все параметры(ключи) Предмета.?
Если это важно для Вас , то сделаю, просто я не заморачивался с очерёдностью следования параметров в предмете, считал , что это не имеет значения.
Цитировать
в такой же способ по-идее могло бы работать удаление
Вот здесь не понятно . При удалении просто удалится не нужный параметр и всё, зачем здесь заморачиваться с переменными ?
Цитировать
зачёркнутое поведение подтверждено
Читал несколько раз.... ничего не понял  :stars: Я так понимаю, что после некоторых действий меняется очерёдность параметров ? Распишите действия по-шагово. Всё, понял ! Если скопировать предмет и добавить новый параметр он будет первым в списке ! Разберусь !
« Последнее редактирование: Ноябрь 14, 2016, 20:41:35 от ra4o »

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #33, Отправлен: Ноябрь 15, 2016, 00:53:46 »
Цитировать
нельзя ли сделать чтоб при Переименовании перезаписывались все параметры(ключи) Предмета.?
Если это важно для Вас , то сделаю, просто я не заморачивался с очерёдностью следования параметров в предмете, считал , что это не имеет значения.
сохранность следование параметров все же важна, хотя бы для более быстрого взаимодействия. например 2 предмета: стул(ножки, винты, спинка, сиденье) и стол(ножки, винты, столешница) - удобно когда в этих подобных предеметах, подобные параметры размещены на одинаковых местах, и на них же остаются.

Цитировать
в такой же способ по-идее могло бы работать удаление
Вот здесь не понятно . При удалении просто удалится не нужный параметр и всё, зачем здесь заморачиваться с переменными ?
то я "намудрил". главное чтоб при удалении всё просто сдвигалось на 1 вверх, но не менялись ни позиции параметров между собой, ни ново-создаваемых.

Русское сообщество AutoIt

Re: Составление списка из каталога
« Ответ #33 Отправлен: Ноябрь 15, 2016, 00:53:46 »

Оффлайн ra4o [?]

  • Продвинутый
  • ***
  • Сообщений: 531
  • Репутация: 84
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #34, Отправлен: Ноябрь 15, 2016, 14:59:14 »
Изменил там-же, в Ответ #24

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #35, Отправлен: Ноябрь 18, 2016, 03:35:20 »
спасибо, сейчас обкатываю всё чтоб поверить что глюков нет. можно смело сказать это v2.0

Оффлайн MissEnlila [?]

  • MissEnlilaLJ
  • Сообщений: 7
  • Репутация: -1
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
РЕШЕНО Составление списка из каталога
« Ответ #36, Отправлен: Ноябрь 29, 2016, 19:31:38 »
Да, надо ещё учесть, что в ОС Windows 7 папка Documents and Settings  уже не используется и недоступна, поэтому искать файл списка литературы Source.xml уже надо в папке Пользователи, то есть, например, в C:UsersWassailAppDataRoamingMi  crosoftBibliography. Далее - выше по тексту.

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #37, Отправлен: Декабрь 10, 2016, 00:54:52 »
вновь нужна маленькая доработка = появилась потребность вводить в значении параметра числа с запятой и соответственно сумировать их потом.

сейчас ввод значения параметра возможен только цифровой(без запятой), сумирование тоже явно идёт по целым числам. возможно это скорректировать?

Русское сообщество AutoIt

Re: Составление списка из каталога
« Ответ #37 Отправлен: Декабрь 10, 2016, 00:54:52 »

Оффлайн ra4o [?]

  • Продвинутый
  • ***
  • Сообщений: 531
  • Репутация: 84
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #38, Отправлен: Декабрь 10, 2016, 15:56:48 »
Изменил в ответе №24

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #39, Отправлен: Декабрь 10, 2016, 22:09:02 »
спасибо! неожиданное приминение RegEx, но всё работает и это главное.

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #40, Отправлен: Декабрь 18, 2016, 20:48:32 »
сравнение одного и того же каталога До и После сортировки =>
в Каталоге оказались 2 предмета с одинаковыми именами - почему они не оказались подряд на одной позиции? при этом Предеметы по сути одинаковы и именами и параметрами/значениями. отличие только в том, что тот который выпал из списка(стоит выше), имеет 2 дополнительных параметра.
это случайность, баг, или я упускаю что-то в логике алгоритма?

рассмотрел скрины, понял что ошибки нет. :whistle:


Внимание: Для просмотра прикреплённых файлов необходимо Войти или Зарегистрироваться
« Последнее редактирование: Декабрь 18, 2016, 21:24:04 от eil »

Оффлайн Alofa [?]

  • Скриптер
  • ****
  • Сообщений: 1076
  • Репутация: 146
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Составление списка из каталога
« Ответ #41, Отправлен: Декабрь 18, 2016, 21:17:26 »
или я упускаю что-то ...
ТУМБА ЯЩИКИ KLZ 600
ТУМБА ЯЩИКИ KYZ 600

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #42, Отправлен: Декабрь 18, 2016, 21:28:53 »
или я упускаю что-то ...
ТУМБА ЯЩИКИ KLZ 600
ТУМБА ЯЩИКИ KYZ 600
да уже опосля досмотрелся где разница, спасибо.


Добавлено: Декабрь 18, 2016, 22:24:52
немного потетсировал и заметил что все же такое оптимизированное решение несколько неудобно. понимаю что сортировка только при сохранении уместа для сокращения операций записи/чтения над временным файлом, но так проблема решается только на половину - да, вот котрыл базу, все удобно видно, но создал пару предметов и они вновь гдето далеко внизу, сохраняешься, переоткрыаешь чтоб увидеть всю картину, и вновь по кругу.
нет ли какого-то варианта чтоб визуально было видно сортировку сразу, а в базу сохранялось бы потом? или это все равно пересоздание временного файла при кадом факте сортировки?
« Последнее редактирование: Декабрь 18, 2016, 22:24:52 от eil, Причина: Объединение сообщений »

Оффлайн ra4o [?]

  • Продвинутый
  • ***
  • Сообщений: 531
  • Репутация: 84
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #43, Отправлен: Декабрь 18, 2016, 23:57:34 »
При добавлении/изменении предмета в базе перезаписываю, сортирую ini файл и удаляю и создаю уже отсортированный список. Изменил там-же http://autoit-script.ru/index.php?topic=21218.msg133629#msg133629

Оффлайн eil [?]

  • Новичок
  • *
  • Сообщений: 53

  • Автор темы
  • Репутация: 0
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Составление списка из каталога
« Ответ #44, Отправлен: Декабрь 19, 2016, 03:26:03 »
При добавлении/изменении предмета в базе перезаписываю, сортирую ini файл и удаляю и создаю уже отсортированный список. Изменил там-же http://autoit-script.ru/index.php?topic=21218.msg133629#msg133629
тоесть при каждом изминении/добавлении предмета временный файл базы физически удаляется и создаётся снова чтобы быть отсортированным?

Русское сообщество AutoIt

Re: Составление списка из каталога
« Ответ #44 Отправлен: Декабрь 19, 2016, 03:26:03 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
9 Ответов
4576 Просмотров
Последний ответ Ноябрь 03, 2010, 13:41:39
от Alexander
2 Ответов
2646 Просмотров
Последний ответ Январь 23, 2011, 14:28:40
от Fever
5 Ответов
1895 Просмотров
Последний ответ Март 10, 2013, 18:58:17
от AZJIO
3 Ответов
3718 Просмотров
Последний ответ Март 19, 2013, 18:34:56
от forbrock
8 Ответов
4092 Просмотров
Последний ответ Апрель 11, 2013, 14:37:14
от madmasles
3 Ответов
1869 Просмотров
Последний ответ Октябрь 13, 2013, 20:00:08
от beliy
12 Ответов
10126 Просмотров
Последний ответ Июль 21, 2015, 19:25:32
от alex33
0 Ответов
1172 Просмотров
Последний ответ Октябрь 23, 2013, 20:02:06
от buben
1 Ответов
710 Просмотров
Последний ответ Август 05, 2014, 13:00:08
от madmasles
7 Ответов
1243 Просмотров
Последний ответ Ноябрь 30, 2014, 10:03:27
от madmasles