VsMoroz / account-buh-documents

Automatically exported from code.google.com/p/account-buh-documents
0 stars 0 forks source link

Отчет Ковальчук #31

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 9 years ago
Вверху там где Справочники, Помощь. Перед 
Справочники размести новое меню "Отчеты"

Там добавь отчет строчку "Разовые 
Ковальчук И"

Строить его будем по шаблону во вложении, 
сам SQL запрос я напишу завтра.

Original issue reported on code.google.com by rf40...@gmail.com on 21 Nov 2014 at 4:14

Attachments:

GoogleCodeExporter commented 9 years ago
Запрос выдает результат требуемый для 
составления отчета, поля в запросе 
расставленны так же как в шаблоне, один за 
одним в том же порядке:

SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       z_tab_invoice.sap_id AS 'SAP ID',z_tab_invoice.planner_id AS Планер,
       kli.client AS 'Клиент',tab_town.town AS Город,
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%e.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',z_tab_invoice.summa AS Сумма,DATE_FORMAT(z_tab_invoice.dt_of_pay,'%e.%m.%y') AS 'Дата оплаты', z_tab_invoice.reestr_num_kovalchuk AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients'
ORDER BY z_tab_invoice.timestamp DESC

Original comment by rf40...@gmail.com on 22 Nov 2014 at 6:13

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.09

Original comment by panche...@gmail.com on 24 Nov 2014 at 6:47

GoogleCodeExporter commented 9 years ago
Спасибо,  убери в шаблоне желтый фон, 
расставь ширину и... мелкие  модернизации по 
центровке и ширине полей... вобщем наверное 
проще просто взять файли во вложении и 
использовать его как шаблон :) Прикладываю 
файл.

Original comment by rf40...@gmail.com on 25 Nov 2014 at 6:00

Attachments:

GoogleCodeExporter commented 9 years ago
выполнил, шаблон заменил

Original comment by panche...@gmail.com on 25 Nov 2014 at 6:14

GoogleCodeExporter commented 9 years ago
Используй для построения отчета вот этот 
запрос (пользователям не нравилось 
отображение даты без ведущих нулей и 
сокращенный формат суммы, я это исправил)

SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS Город,
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', z_tab_invoice.reestr_num_kovalchuk AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients'
ORDER BY z_tab_invoice.timestamp DESC

Original comment by rf40...@gmail.com on 25 Nov 2014 at 6:01

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.11

Original comment by panche...@gmail.com on 26 Nov 2014 at 6:36

GoogleCodeExporter commented 9 years ago
Замени запрос на  ниже приведенный ( в нем 
сделано что бы  если поле "реестр Ковальчук" 
пустое то в отчет ничего не вставлялось 
(раньше туда вставлялись нули))

Так же проверь файлик-отчет который строит 
программа, у меня в полях SAP ID,№ задачи из 
планера,№ счета,дата счёта, сумма,дата 
оплаты,Реестр Ковальчук перед значением 
стоит скрытый знак ' , его  видно если нажать 
или попытаться отредактировать значение в 
этой ячейке опен офис документа.

SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS Город,
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients'
ORDER BY z_tab_invoice.timestamp DESC

Original comment by rf40...@gmail.com on 26 Nov 2014 at 6:52

GoogleCodeExporter commented 9 years ago
запрос исправил.

Программа файл не формирует, она заполняет 
пустые ячейки в шаблоне. Шаблон 
'Kovalchuk.ods'находится в папке с exe-файлом. 
Скрытых значков я в нем не нашел.

Original comment by panche...@gmail.com on 26 Nov 2014 at 7:12

GoogleCodeExporter commented 9 years ago
Что же нам теперь делать, я только что 
проверил в шаблоне значков нет, в 
построенном отчете скрытые значки есть. 
Как убрать ? 

Original comment by rf40...@gmail.com on 26 Nov 2014 at 7:17

Attachments:

GoogleCodeExporter commented 9 years ago
Проблема в шаблоне: формат ячейки = "цифра", 
поменяй на "текст".

Original comment by panche...@gmail.com on 26 Nov 2014 at 7:46

GoogleCodeExporter commented 9 years ago
В шаблоне поменять или в запросе ? 
Если я поменяю в своем шаблоне, он же не 
поменяется в шаблонах других 
пользователей.
Тебе нужно поменять в шаблоне и при 
следующем обновлении  - этот шаблон 
обновится у пользователей.Так ?

Original comment by rf40...@gmail.com on 26 Nov 2014 at 7:49

GoogleCodeExporter commented 9 years ago
Меняешь формат нужных полей в шаблоне. Я 
добавляю этот шаблон в setup-файл. И все 
довольны.

Original comment by panche...@gmail.com on 26 Nov 2014 at 7:56

GoogleCodeExporter commented 9 years ago
Смотри какой нюанс, дальше данные из отчета 
 сотрудники будут копировать и переносить 
в  свои эксель таблицы. Очень желательно 
что бы деньги имели числовой формат,  номер 
сап и планер имели числовой формат, даты  
имели формат даты, т.к. в экселе они по ним 
будут строить какую то аналитику.

Как можно сделать что бы  в опен офисе 
данные из полей хранились не в текстовом 
формате а в том который я написал. но не 
было апострофов ?

Original comment by rf40...@gmail.com on 26 Nov 2014 at 8:48

GoogleCodeExporter commented 9 years ago
И вот такой нюанс, заказчик требует что бы 
сумма в отчете отображалась в формате с 
обязательными двумя знаками после запятой.

Запрос, выдает именной такой формат данных, 
но в отчете опен офиса эти знаки кудато 
исчезают если сумма цельная.
Пример: 111,00

Подкорректируй что бы сумма в отчете была с 
двумя цифрами после запятой в любом случае 
даже если это два нуля.

Original comment by rf40...@gmail.com on 26 Nov 2014 at 8:53

GoogleCodeExporter commented 9 years ago
Думаю такой вид шаблона подойдет? Все поля 
имеют формат "число", кроме полей 'Дата 
оплаты' и 
'дата счета' = "Дата".

Original comment by panche...@gmail.com on 26 Nov 2014 at 9:16

GoogleCodeExporter commented 9 years ago
Я думаю они будет использовать для своей 
аналитик только поля сумма и даты, вот 
поэтому нужно что бы Сумма была в числовом 
формате с двумя знаками после запятой, а 
даты - были датами. Все остальное  - в любом 
формате подойдет.

Original comment by rf40...@gmail.com on 26 Nov 2014 at 9:24

GoogleCodeExporter commented 9 years ago
Вот кстати выдает такую ошибку, потому что 
в номере договора может быть что угодно, 
некоторые там просто цивры ставят 
некоторые цифры с косыми/ \ все используют 
вобщем.

Original comment by rf40...@gmail.com on 26 Nov 2014 at 9:26

Attachments:

GoogleCodeExporter commented 9 years ago
Договор действительно (tab_catal_dogovor.dogovor) 
может содержать что угодно, а в 
z_tab_invoice.num_dogovor - это ссылка на это поле и оно 
число.
Или речь о другом?

Original comment by panche...@gmail.com on 26 Nov 2014 at 9:43

GoogleCodeExporter commented 9 years ago
Пардон, замени слово договор, на номер 
счета.
Номер счета может содержать что угодно.

Original comment by rf40...@gmail.com on 26 Nov 2014 at 9:53

GoogleCodeExporter commented 9 years ago
Сделал поле текстовым.

Original comment by panche...@gmail.com on 26 Nov 2014 at 10:00

GoogleCodeExporter commented 9 years ago
Отлично ! 
Штрихи, отцентруй в отчете поля где Дата - 
по центру.
А поле Сумма прижми вправо и я отправлю на 
тест программу.

Original comment by rf40...@gmail.com on 26 Nov 2014 at 10:04

GoogleCodeExporter commented 9 years ago
выполнил

Original comment by panche...@gmail.com on 26 Nov 2014 at 10:10

GoogleCodeExporter commented 9 years ago
Спасибо ! 

Original comment by rf40...@gmail.com on 27 Nov 2014 at 4:40

GoogleCodeExporter commented 9 years ago
Верну этот вопрос в работу, необходио что 
бы в этот отчет попадали так же счета 
привязанные к поставщикам (не 
субпровайдерам)

Original comment by rf40...@gmail.com on 1 Feb 2015 at 6:15

GoogleCodeExporter commented 9 years ago
Сделал запрос, который выдает всю 
информацию как старый в это ветке для 
подстановки в отчет, но проверить не могу 
т.к. дома сейчас, проверь у тебя работает в 
него попадают разовые счета от 
"поставщиков" ? (в запросе добавил слева еще 
одно поле ts (timestamp)оно нужно для сортировки 
в документ опен офиса это поле пока не надо 
включать, только те же поля что и ранее, 
тоесть все кроме последнего

(SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS Город,
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.timestamp AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients')
UNION ALL
(SELECT tab_catal_comm_dep.namedepartment AS  'Бизнес',
       tab_access.nik AS 'Менеджер',
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS 'Планер',
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS 'Адрес',   
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS 'НомСчета',DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS 'Сумма',
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.timestamp AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  z_tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN z_tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'z_tab_klients')
ORDER BY ts DESC

Original comment by rf40...@gmail.com on 1 Feb 2015 at 8:48

GoogleCodeExporter commented 9 years ago
(в запросе добавил СПРАВА еще одно поле ts 
(timestamp)оно нужно для сортировки в документ 
опен офиса это поле пока не надо включать),

Original comment by rf40...@gmail.com on 1 Feb 2015 at 8:55

GoogleCodeExporter commented 9 years ago
разовые попадают (z_tab_invoice.type.docum = 2).

Original comment by panche...@gmail.com on 4 Feb 2015 at 7:44

GoogleCodeExporter commented 9 years ago
Хорошо давай этот запрос будем 
использовать для построение отчета 
Ковальчук

Original comment by rf40...@gmail.com on 5 Feb 2015 at 11:20

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.29.

Original comment by panche...@gmail.com on 5 Feb 2015 at 1:14

GoogleCodeExporter commented 9 years ago
Начали юзать отчет Ковальчук, нащли ошибки.
Я их исправил, они назначительные, одно 
поле было связанно не с той таблицей. 
Для исправления используй при построении 
отчета вот этот запрос (количество поле не 
менялось, тебе нужно его просто подменить)

(SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.timestamp AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
UNION ALL
(SELECT tab_catal_comm_dep.namedepartment AS  'Бизнес',
       tab_access.nik AS 'Менеджер',
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS 'Планер',
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS 'Адрес',   
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS 'НомСчета',DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS 'Сумма',
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.timestamp AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN z_tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'z_tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
ORDER BY ts DESC

Original comment by rf40...@gmail.com on 27 Feb 2015 at 3:22

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.38

Original comment by panche...@gmail.com on 28 Feb 2015 at 9:10

GoogleCodeExporter commented 9 years ago
Что то сильно не так с запросом который ты 
используешь для построения отчета 
Ковальчук.
Когда я беру запрос указанный выше 
запускаю в phpmyadmin - получаю такой же 
результат как и в программе бух учета. 
(привожу его во вложении)

Когда запускаю построение отчета из 
программы - получаю совсем другой 
результат с пропусками с неправильным 
подтягиванием. Прикладываю оба файла 
выделил красным там где отличия.

Используй запрос из этой ветки.

Original comment by rf40...@gmail.com on 28 Feb 2015 at 7:57

Attachments:

GoogleCodeExporter commented 9 years ago
Разница между старым и новым запросами: в 
секцию WHERE добавилось  AND z_tab_invoice.not_incl_in_kreestr 
= "0". Это так?

Original comment by panche...@gmail.com on 1 Mar 2015 at 10:23

GoogleCodeExporter commented 9 years ago
Исправил, v1.01.39

Original comment by panche...@gmail.com on 1 Mar 2015 at 11:00

GoogleCodeExporter commented 9 years ago
Хотят поменять сортировку, теперь надо не 
по дате добавления а по номеру СПП 
элемента, вот запрос с правильной 
сортировкой:

(SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.sap_id AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
UNION ALL
(SELECT tab_catal_comm_dep.namedepartment AS  'Бизнес',
       tab_access.nik AS 'Менеджер',
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS 'Планер',
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS 'Адрес',   
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS 'НомСчета',DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS 'Сумма',
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.sap_id AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN z_tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'z_tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
ORDER BY ts ASC

Original comment by rf40...@gmail.com on 3 Mar 2015 at 6:08

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.41

Original comment by panche...@gmail.com on 4 Mar 2015 at 7:29

GoogleCodeExporter commented 9 years ago
Просят опять поменять сортировку: 
фактически меняется только нижняя строчка  
было:  ORDER BY ts ASC стало ORDER BY ts DESC

Вот готовый запрос:
(SELECT tab_catal_comm_dep.namedepartment AS  Бизнес,
       tab_access.nik AS Менеджер,
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS Планер,
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS Адрес, 
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS НомСчета,DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS Сумма,
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.sap_id AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
UNION ALL
(SELECT tab_catal_comm_dep.namedepartment AS  'Бизнес',
       tab_access.nik AS 'Менеджер',
       if(z_tab_invoice.sap_id != '0',z_tab_invoice.sap_id,'') AS 'SAP ID',
       if(z_tab_invoice.planner_id!='0',z_tab_invoice.planner_id,'') AS 'Планер',
       kli.client AS 'Клиент',tab_town.town AS 'Город',
       z_tab_invoice.address AS 'Адрес',   
       provider.client AS 'Стор.оператор',
       z_tab_invoice.num_invoice AS 'НомСчета',DATE_FORMAT(z_tab_invoice.dt_invoice,'%d.%m.%y') AS 'дата счета',
       z_tab_invoice.detail_of_pay AS 'НазнПлатежа',
       ROUND(z_tab_invoice.summa,2) AS 'Сумма',
       if(z_tab_invoice.dt_of_pay!='0000-00-00',DATE_FORMAT(z_tab_invoice.dt_of_pay,'%d.%m.%y'),'') AS 'Дата оплаты', 
       if(z_tab_invoice.reestr_num_kovalchuk !='0',z_tab_invoice.reestr_num_kovalchuk,'') AS 'Реестр Ковальчук',
       z_tab_catal_type_budget.statiya  AS 'Статья бюджета',
       z_tab_invoice.sap_id AS 'ts'
FROM z_tab_invoice 
LEFT JOIN  tab_catal_comm_dep ON z_tab_invoice.business = tab_catal_comm_dep.id
LEFT JOIN  tab_access ON z_tab_invoice.manager=tab_access.id
LEFT JOIN  tab_klients  kli ON z_tab_invoice.client=kli.id
LEFT JOIN z_tab_catal_type_budget  ON z_tab_invoice.articl_budget 
=z_tab_catal_type_budget.id
LEFT JOIN tab_town ON z_tab_invoice.town =  tab_town.id
LEFT JOIN tab_catal_dogovor ON z_tab_invoice.num_dogovor=tab_catal_dogovor.id
LEFT JOIN z_connecttable ON tab_catal_dogovor.id = z_connecttable.tab_b_id
LEFT JOIN z_tab_klients provider ON z_connecttable.tab_a_id = provider.id
WHERE z_tab_invoice.type_docum = '2' AND z_connecttable.tab_b like 
'tab_catal_dogovor' AND z_connecttable.tab_a like 'z_tab_klients' AND 
z_tab_invoice.not_incl_in_kreestr = '0')
ORDER BY ts DESC

Original comment by rf40...@gmail.com on 4 Mar 2015 at 10:00

GoogleCodeExporter commented 9 years ago
Выполнил, v1.01.42

Original comment by panche...@gmail.com on 4 Mar 2015 at 11:11

GoogleCodeExporter commented 9 years ago
Спасибо

Original comment by rf40...@gmail.com on 30 Mar 2015 at 9:48

VsMoroz commented 9 years ago

Отчет Ковальчук, просят добавить в него поле Комментария, я добавил в запрос (посмотри коммит ad10fb3f2aebf54bbd8d69f2a8a85fba8286d73d). Что бы тебе было удобно поменя в файлике с запросом имена полей на английские ( которые тебе удобны account-buh-documents/Query/Отчеты - Разовые Ковальчук.sql)

Давай добавим этот запрос в модуль который строит отчет в reestr Отчеты -> Разовые ковальчук, соответственно в документе появится поле коментарий. Шаблон пришлю по email

panches commented 9 years ago

Изменения выполнил. v1.01.72. Файл выложил

VsMoroz commented 9 years ago

Ты похоже не ту версию выложил. Она то лежит в папке 1.01.72 но после установки пишет что она есть 1.01.71 и нового поля в отчете у нее тоже нет.

panches commented 9 years ago

заменил на правильную

VsMoroz commented 9 years ago

Гуд, работает, в инсталляционном дистрибутиве сделай заголовок для нового поля Комментарий - таким же по формате как и остальные подзаголовки. Ну и ширину хотя бы на ширину надписи. Отправляю пользователям на тестирование.

panches commented 9 years ago

Давай это сделаеш ты, а то я опять нитак сделаю (слабо понимая требования). Файл Kovalchuk.xlsx есть установочной папке. Пришли мне его в таком же виде (заголовок и одна пустая строчка).

panches commented 9 years ago

файл выложил (с отформатированным файлом)

VsMoroz commented 9 years ago

Все гуд, спасибо !

VsMoroz commented 9 years ago

Отчет Ковальчук, просят добавить в него поле Статус, разместить его между "Статья бюджета" и "Комментарий". Я добавил значение в запрос,вот этим коммитом 697eb5fe8f7d3450537ffd43759d3c618a24c5f6,

Давай добавим этот запрос в модуль который строит отчет в reestr Отчеты -> Разовые ковальчук, соответственно в документе появится поле Статус. Шаблон пришлю по email

panches commented 9 years ago

Изменения выполнил. v1.01.73. Файл выложил