Тикет управления конфигурациями

Да, обновлял. в модели данных строка есть

jira_id	jira id	Текст (Multiline character string)	RoutineChange	 	 	Столбцы: jira_id: TEXT, По умолчанию: "jira_id", Null разрешён

При создании нового тикета, строка видна. при нажатии на кнопку создать выдает:

Ошибка: Failed to issue SQL query: query = INSERT INTO `change_routine` (`id`,`jira_id`) VALUES (7, '14125'), mysql_error = Unknown column 'jira_id' in 'field list', mysql_errno = 1054.

Посмотрел в базе, столбец не добавился в таблицу change_routine. там присутствует только один столбец id. Получается itop не добавил столбец в таблицу. И что делать? в ручную добавить?

Как именно?

Во вкладке Data Model Consistency сначала проверил, он написал ОК.
Далее во вкладке iTop Update выполнил сначало Refresh а потом Update Itop Code

Жать надо на кнопку Update iTop code and Database! Если нет такой, перезапустите тулкит.

Перезапустил Toolkit, кнопка не появилась

Какая у вас версия iTop?
По этому мануалу всё получилось?
https://wiki.openitop.org/doku.php?id=2_2_0:customization:add-attribute-sample

2.2.0.
Все сделал по мануалу.
А вот кнопки “Update iTop code and Database” не было

В мануале ведь тоже ничего не сказано про кнопку “Update iTop code and Database”.

Click on the button Update iTop Code to:

    Compile the XML data model to PHP classes
    Update the database schema to add the new text column.

На всякий случай убрал новое поле, и попытался заного его добавить. перезапустил тулкит, он не сругнулся, но кнопка “Update iTop code and Database” так и не появилась

Запустил компиляцию по процедуре апгрейта, и все получилось:)

Это ошибка.

Чудес не бывает)). Вы поле добавляли в том файле, из которого изменения применялись ранее? Версия тулкита 2.2?

Да.

да. с ним что-то не так?

Нет. Просто бывает обновляют iTop, а toolkit старый оставляют.

Понятно.
Следующая задача. во вкладке КЕ добавить дополнительный столбец “Действие” - это будет информативным столбцом

план действий:

  1. создать свой модуль

  2. установить его

  3. скопировать в него код из datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml

  4. добавить филд

    add remove change action_code manual false list

я ничего не упустил?

А можно не копировать весь код, а только то, что мне нужно?

Так и нужно делать. Поле, на которое вы показываете, должно находиться в классе lnkFunctionalCIToTicket.

Если ваши модификации преследуют одну цель, нет смысла выделять их в отдельные модули.

Т.е. я могу этот класс представить в том же файле?

Да, если доработки объединены логикой работы модуля.

Понял.
Возникла не понятная проблема.
Филд я создал, выпадающий список появился:

Но после сохранения, значения не применяются, а устанавливаются в “неопределен”

в чем может быть причина?
вот добавленный код:

<field id="action_code" xsi:type="AttributeEnum" _delta="define">
          <values>
            <value id="act_add">adding</value>
            <value id="act_rem">remove</value>
            <value id="act_chg">change</value>
          </values>
          <sql>action_code</sql>
          <default_value/>
          <is_null_allowed>true</is_null_allowed>
          <display_style>list</display_style>
        </field>

...........
<presentation _delta="redefine">
        <details>
          <items>
            <item id="ticket_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
            <item id="impact_code">
              <rank>30</rank>
            </item>
            <item id="action_code">
              <rank>40</rank>
            </item>
          </items>
        </details>
        <search>
          <items>
            <item id="ticket_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
            <item id="impact_code">
              <rank>30</rank>
            </item>
            <item id="action_code">
              <rank>40</rank>
            </item>
          </items>
        </search>
        <list>
          <items>
            <item id="ticket_id">
              <rank>10</rank>
            </item>
            <item id="functionalci_id">
              <rank>20</rank>
            </item>
            <item id="impact_code">
              <rank>30</rank>
            </item>
 	    <item id="action_code">
              <rank>40</rank>
            </item>
          </items>
        </list>
      </presentation>