выбор строки Н-У для разноски
Здравствуйте.
Сдельную оплату заносим в программу с помощью таблиц разноски в течении месяца два раза (аванс и разница между суммой за месяц и авансом). При этом расчетчикам надо, чтобы в ЛС за месяц была одна строка данного вида оплаты с суммой.
Сами данные загружаем из файлов.
При разноске появляется меню для выбора:
- только в пустые и новые строки
- с добавлением к суммам в ЛС
Мы выбираем, конечно, второе.
Однако, у части ЛС при разноске создаётся таки дополнительная строка.
Как можно это поправить?
Ответ
Добрый день.
А код подразделения, код совместительства и шифр затрат вы как заполняете? Тоже из файла принимаете?
Однако, у части ЛС при разноске создаётся таки дополнительная строка.
Логично выложить сохраненку с таким ЛС...
З.ы. Можно вычислять точный код вида самостоятельно ( перед разноской)
ZPL_zplinfo_net(20180927_150829).cab
Я не против вычисления, просто не знаю как это должно выглядеть (что где прописывать), не делал еще такого
Всё, что загружается из файла, указано в таблице. Что пустое - не загружается. Т.е. всё, кроме совместительства, загружается.
На какой вид разносили сумму, в каком месяце?
Нужна еще таблица с данными, которую разносили, чтобы воспроизвести ситуацию "задвоения"
Таблица с данными это файл, из которого загрузили в таблицу разноски? test.dbf
Если таблица это в таблица разноски, то я не знаю как её добавить.
Вид 3 (внешний код), месяц 8.
Нужна сама таблица разноски( в которую уже приняли данные из test.dbf)...
Пример функции для поиска нужной строки вида:
UserDefineCodeWithSumm(tn,extCode) { //читаем ЛС if(LSRead(atoi(tn),0)!=1) { AmbaMessageBox("Не удалось прочитать ЛС и ТН="+to_string(tn),"Ошибка!!",MB_OK|MB_ICONERROR,0); return -1.; } int rowkod[ROWMAX]; int cntRow=poiskosnkod(Extern_To_Intern(atoi(extCode)),rowkod,0,0); //цикл по строкам вида for (int i = 0; i < cntRow; i++ ) { double code = GetCode(rowkod[i]); double summ=0.; sumvid("=",code,0,summ);//сумма в текущем месяце //ищем только строки с суммами if(nabs(summ)<0.001) continue; //возвращаем точный внешний код первой "подходящей" строки return Intern_To_ExternE(code); } return -1.; }
Таблица:
Функция расчета:
#return UserDefineCodeWithSumm(C_FIO,104);
Использовать в таблице так:
- Принимаете данные из таблицы
- нажимаете alt+f4 -> столбец "точный код вида" должен заполниться...
Спасибо
Про функцию расчета позабыл, один раз всего делал, да и без вызова пользовательской функции
Думаю, этого должно хватить для наших целей
Сервис поддержки клиентов работает на платформе UserEcho
Пример функции для поиска нужной строки вида:
Таблица:
Функция расчета:
Использовать в таблице так: