Інформація по темі "" | Публікації по тегу
21.01.13
1887 0
Друкувати
Обране

Как проверить базу данных

Достоверная информация — важнейший элемент в работе любого бухгалтера. Никакой компьютер, никакой самый совершенный инструмент не помогут решить бухгалтерскую задачу, если она изначально опирается на неправильные данные. Поэтому практические приемы поиска и устранения ошибок в базах данных для бухгалтера чрезвычайно актуальны. И от того, насколько разнообразными и эффективными будут эти приемы, во многом зависит успешность всей его работы. Один из таких приемов, направленных на выявление возможных ошибок, я предлагаю рассмотреть этой статье. А точнее, речь в ней пойдет о поиске записей-дубликатов в базе данных. Тех самых записей, которые так часто становятся причиной досадных недоразумений и головной боли при обработке больших объемов информации.




 

Думаю, что с проблемой поиска дубликатов, так или иначе, сталкивался любой бухгалтер. По крайней мере по моим наблюдениям — это одна из самых распространенных и коварных ошибок в бухгалтерской практике. Поясню подробнее, о чем идет речь. Есть большой реестр (база данных) из нескольких сот, тысяч, а то и десятков тысяч записей. С этим реестром мы собираемся работать в программе Excel. Разумеется, прежде чем что-то делать, данные нужно проверить. Общие цифры нам известны. Поэтому первым делом мы посчитали итоги по реестру, проанализировали, — а они «не идут». При этом есть обоснованное подозрение, что где-то что-то «задвоилось», в реестр попали несколько лишних записей, и они испортили всю картину. Если ошибочная запись одна, а сумма отклонения по итогам нам известна, проблему решить несложно. Для этого можно включить автофильтр, отобрать данные по условию и ошибку, скорее всего, удастся найти. Но на практике такая ситуация встречается редко. По всем известному закону легкое решение обычно невозможно. И сопоставить сумму отклонения с конкретной записью не удастся. В этом случае понадобится применить другой, более общий подход. Суть его очень проста. Нужно внимательно посмотреть на данные, выявить в них те признаки, которые делают каждую запись уникальной, и после этого воспользоваться этими признаками для поиска лишних записей в реестре. Но это, так сказать, общий подход. А нам важнее понять, как он выглядит на практике. Этим мы сейчас и займемся.

Итак, есть база данных, фрагмент которой показан на рис. 1. Эта база представляет собой отчет о продажах, который будет использован для формирования актов сверок по каждому контрагенту. Структура базы, думаю, понятна. Она состоит из семи полей: дата операции (поле «Дата»), номер накладной (поле «Документ»), название предприятия (поле «НаимПредпр»), наименование ТМЦ (поле «Наименование»), дальше идут количество купленного товара (поле «Кол-во»), его цена (поле «Цена») и сумма покупки (поле «Сумма»).

База данных получена из системы автоматизации бухгалтерского учета. А это значит, что итоговые цифры для этого отчета нам известны: по анализу счета мы знаем, что суммарный оборот по базе должен составить 12720,00 грн. В то время как после импортирования данных в MS Excel итог равен 12968,00 грн., т. е. он отличается в большую сторону на 248,00 грн. Отсюда наше подозрение, что в базу каким-то образом попали лишние записи и наша задача — обнаружить их и удалить.

Искать повторяющиеся записи по названию контрагента или по товарам в данном случае бесполезно. Здесь ситуация такова. Посчитать количество повторяющихся записей мы можем при помощи функции «Счетесли()». Но что выбрать в качестве критерия для отбора? Если это будет название предприятия, то таких записей в базе окажется много, и результат мы не получим. Другое дело, если условие усложнить, и посчитать количество повторяющихся строк, где совпадает наименование предприятия и название товара. Вероятность точного совпадения в данном случае будет намного меньше, но все равно она есть. Следуя той же логике, можно к условию отбора добавить еще и поле «Сумма». Записей, где совпадают значения сразу по трем колонкам, в базе данных будет немного. И, вполне возможно, что такой составной критерий сразу приведет нас к решению поставленной задачи. В любом случае, последовательно дополняя критерий новыми условиями, мы всегда сможем сузить область поиска так, чтобы поиск ошибки в базе данных не составил труда. Посмотрим, как это работает на примере таблицы, изображенной на рис. 1. Я предлагаю ограничить критерий для поиска дубликатов тремя значениями: мы будем анализировать название предприятия, наименование товара и сумму продажи. Делаем так.

1. Открываем документ, изображенный на рис. 1.

2. Становимся на ячейку «H1» и вводим заголовок «Ключ».

3. В ячейку «H2» вводим формулу: «=C2&D2&G2». Эта формула объединит данные из колонок «C», «D» и «G» в одну строку.

4. Копируем формулу на всю высоту таблицы. Результат получился неприглядный, но красота нам сейчас ни к чему. Мы будем использовать данные из колонки «Ключ» только для подсчета повторяющихся значений.

5. Становимся на ячейку «I1», пишем произвольный заголовок. В нашем примере я назвал эту колонку «Пр».

6. В ячейку «I2» вводим формулу «=Счётесли(H:H;H2)». Эта формула посчитает количество повторяющихся значений из ячейки «H2» в колонке «H». Таким образом, в столбце «H» мы получим количество записей, в которых совпадает название предприятия, купленный товар и сумма покупки. Если полученное значение равно «2» или больше, то для нас это сигнал о возможной ошибке.

7. Копируем формулу на всю высоту таблицы. Результат нашей работы показан на рис. 2. Посмотрим, что у нас получилось.

8. В меню «Главная» щелкаем на иконке «Сортировка и фильтр» (группа «Редактирование»).

9. Из открывшегося меню выбираем вариант «Фильтр». В заголовках колонок появятся значки для фильтрации данных.

10. Щелкаем левой кнопкой на таком значке в колонке «Пр». Откроется окно настроек, изображенное на рис. 3.

11. В этом окне вводим параметры, как показано на рис. 3, — нас интересуют записи, где число повторов «2» или больше.

12. В окне параметров фильтра нажимаем «ОК». Все, повторяющиеся записи у нас как на ладони (рис. 4).

В результате работы автофильтра на экране осталось четыре записи: это строки с номерами «4», «9», «10» и «13». Это означает, что в исходной базе они повторяются ровно по два раза, о чем свидетельствуют значения в колонке «I». На самом деле мы видим, что в базе данных у записей «4» и «10» (контрагент «ЧП "Матадор"» полностью совпадают значения в колонках «НаимПред», «Наименование» и «Сумма». Та же картина характерна и для записей с номерами «9», «10» (предприятие «ООО "Vision"»).

13. Удаляем лишние строки (в базе нужно оставить только один экземпляр из отобранных записей). Пусть это будут строки с номерами «4» и «9».

14. Отключаем автофильтр и суммируем значения по колонке «Сумма». Теперь результат равен 12720,00 грн., что и требовалось получить.

Вместо автофильтра повторяющиеся значения удобно искать с помощью условного форматирования. В нашем примере это можно сделать так.

1. Открываем таблицу, изображенную на рис. 2, щелкаем на иконке «Сортировка и фильтр» и выбираем вариант «Фильтр» (отключаем работу автофильтра).

2. Становимся на ячейку «I2».

3. Нажимаем клавишу «F2» (или щелкаем левой кнопкой в строке формул).

4. Выделяем текст формулы и копируем его в буфер обмена (комбинация «Ctrl+C»).

5. Нажимаем «Esc» — завершаем работу в строке формул и возвращаемся на рабочий лист.

6. На ленте меню «Главная» находим группу «Стили», щелкаем на иконке «Условное форматирование», из предложенного меню выбираем пункт «Создать правило…» (рис. 5). Откроется окно, как на рис. 6.

 

7. В этом окне выбираем вариант «Использовать формулу для определения форматируемых ячеек». Окно примет вид, как на рис. 6, — под строкой «Форматировать значения, для которых следующая формула является истинной:» в нем появится область для ввода формулы.

8. Щелкаем левой кнопкой мышки внутри этой области и нажимаем «Ctrl+V» — вставляем в нее содержимое из буфера обмена. На данный момент в буфере у нас находится текст формулы, скопированный из ячейки «I2».

9. Щелкаем на кнопке «Формат…». Откроется окно «Формат ячеек», изображенное на рис. 7.

10. В этом окне переходим на закладку «Шрифт», щелкаем на списке «Цвет:» и на палитре выбираем «Красный».

11. Переходим на закладку «Заливка» и параметр «Цвет фона:» устанавливаем в положение «Желтый».

12. В окне «Формат ячеек» нажимаем «ОК».

Условный формат для ячейки «I2» мы создали. Остается распространить его на все ячейки в колонке «I». Делаем так.

1. Становимся на ячейку «I2», где уже заданы параметры условного форматирования.

2. На ленте меню «Главная» в группе «Буфер обмена» щелкаем на иконке «Формат по образцу» (рис. 8).

3. Удерживая левую кнопку мышки, обводим блок значений в колонке «I» для конца таблицы.

Окончательная таблица осталась такой же, как и на рис. 2. Но форматирование колонки «I» в ней изменилось: теперь значения в ячейках «I4», «I9», «I10», «I13» выделены красным шрифтом на желтом фоне. Это означает , что повторяющиеся записи нужно искать среди строк «4», «9», «10» и «13» нашей таблицы.

И еще. На практике бывают ситуации, когда простое объединение значений из нескольких колонок операцией «&» не позволяет получить уникальный рабочий ключ. Сугубо гипотетический пример: объединение значений «Бухгалтер», «&Компьютер», а также «Бухгалтер&», «Компьютер» даст одинаковый результат. В некоторых случаях (хотя это бывает крайне редко!) такую ситуацию нужно отследить и получить разный рабочий ключ. Рецепт в данном случае простой. При объединении формул операцией «&» нужно между значениями вставить произвольный символ. Желательно такой, которого нет исходной таблице. Для нашего примера мы могли бы использовать знак «». И тогда выражения для рабочего ключа «="Бухгалтер" &""& "&Компьютер"» и «="Бухгалтер&" &""& "Компьютер"» дадут разный результат. В первом случае получится «Бухгалтер&Компьютер», а во втором — «Бухгалтер&Компьютер». И проблема будет решена.

И последний момент. Мы рассмотрели универсальный прием для поиска повторяющихся значений в базе данных. Его можно использовать не только во всех версиях MS Excel, а вообще в любой электронной таблице. Если же говорить о программах Excel 2007(2010), у них есть другие, специальные инструменты для решения нашей задачи. О том, что это за инструменты, каковы их преимущества и недостатки, мы поговорим в одной их наших следующих статей. А на сегодня все.

 

Успешной работы! Жду ваших писем, предложений и замечаний на bk@id.factor.ua, nictomkar@rambler.ru или на форуме редакции.

env_icon Наш сайт корисний для вас?

Отримуйте першими актуальні новини! env_icon

Підписатися на найактуальнішу розсилку для бухгалтера бюджетної установи

Помітили помилку? Виділіть її та натисніть Ctrl+Enter, щоб повідомити нас про це



Коментарі
(0)
Яка вдача - ви можете стати першим, хто прокоментує цей матеріал.
Залишити коментар:
Ваше ім`я
Коментарі
pw-image
Доступ до сайту за ціною чашки кави
Платне користування buhgalter.com.ua передбачає:
  • доступ до новин, статей, довідників
  • безлімітні завантаження бланків
  • відсутність реклами.
Передплатники «Бюджетної бухгалтерії», «Оплата праці» та користувачі «FIT-Бюджет» отримують безкоштовний доступ до порталу бонусом до передплати.
30
грн/
місяць
Вже передплатили? Увійти
ic-acc-pay
×

 

Договір публічної оферти

Угода

про умови використання інформаційних ресурсів сайту

Ця Угода укладена між ТОВ «НВП «ФАКТОР» (далі - Компанія) і будь-яким Користувачем (далі загально названі - Сторони) веб-сайту (-ів) buhgalter.com.ua і / або budget.factor.ua, далі іменуються - Сайт.

Загальні положення

Наведені нижче умови є електронною формою документа, що визначає порядок використання, а саме, надання Користувачеві доступу до інформаційних ресурсів через Сайт.

Ця угода (Договір) носить характер публічної оферти, тобто є еквівалентом "усної угоди" і відповідно до чинного законодавства України має належну юридичну силу.

Сайт є об'єктом авторського права і як складного твору, а також "компіляції даних" ("бази даних") охороняється на території України, відповідно до Закону України "Про авторське право і суміжні права".

Всі авторські майнові права на Сайт належать Компанії. Позначення «buhgalter», «Factor» є знаком для товарів і послуг (торговою маркою) і не може використовуватися Користувачем без отримання відповідної ліцензії.

Компанія докладає всіх зусиль щодо забезпечення достовірності і актуальності інформації, представленої на Сайті. Однак Компанія не бере на себе фінансової та іншої відповідальності за результати застосування цієї інформації.

Підписка - повний доступ до всіх матеріалів, розміщених на Сайті. Підписка надається за певну плату на певний строк відповідно до умов відповідного тарифу Підписки.

Автоподовження підписки - сервіс автоматичного продовження підписки.

 

 

1. Прийняття Угоди

 

1.1. Для того, щоб отримати право доступу до інформаційних ресурсів Сайту, Користувачеві необхідно спочатку висловити свою згоду з цією угодою. Користувач не має санкціонованого доступу до інформаційних ресурсів Сайту, якщо він не прийняв або не згоден з умовами цієї угоди.

1.2 Згідно з умовами Договору Компанія надає Користувачам Передплату на платній основі з метою перегляду користувачами окремих матеріалів, розміщених на Сайті. Категорії платної інформації визначаються Товариством самостійно.

1.3. За згодою Користувача з умовами цієї угоди, Користувачеві надається доступ до інформаційних ресурсів Сайту. Інформаційні ресурси надаються «як є» і не припускають наступних доопрацювань.

1.4. Користувач має право припинити користуватися Сайтом в будь-який момент, без спеціального повідомлення Компанії про припинення користування Сайтом.

1.5. Для отримання доступу до ресурсів від Користувача може знадобитися надання інформації про себе (наприклад, відомості про особу, відомості про юридичну особу та інші контактні дані) з метою продовження користування Користувачем послугами Компанії.

1.6. Беручи до уваги безперервне впровадження нових розробок, Користувач визнає і погоджується з тим, що Компанія має право на власний розсуд припинити (тимчасово або остаточно) надання доступу до ресурсів Сайту (або будь-яких окремих функцій Сайту) всім користувачам взагалі або Користувачеві зокрема, без попереднього повідомлення.

1.7. Компанія на постійній основі впроваджує нові розробки для того, щоб надавати найкращі можливі послуги своїм користувачам. Користувач визнає і погоджується з тим, що форма і характер послуг (дизайн сайту, обсяг наданої інформації, тематика і ін.) можуть час від часу змінюватися без попереднього повідомлення Користувача.

 

 

2. Відповідальність сторін

 

2.1. Матеріали Сайту видаються без будь-яких гарантій, неявних або інших. Компанія не несе відповідальність за повноту і точність інформації, що міститься в матеріалах сайту, відповідність її вимогам Користувача.

2.2. Всі ризики, що виникають при використанні матеріалів (ресурсів) Сайту, несе Користувач. Компанія ні за яких умов не несе відповідальності за будь-які понесені Користувачем збитки, у чому б вони не виражалися, в тому числі, в разі якщо компанія була повідомлена про можливість заподіяння збитків.

2.3. Ризик настання негативних наслідків в результаті використання рекомендацій, думок і тверджень, що містяться на Сайті, в повному обсязі несе Користувач. Компанія не гарантує і не підтверджує точність і достовірність, рекомендацій, думок і тверджень, що містяться на Сайті.

2.4. Компанія не несе ніякої відповідальності за будь-які помилки, неточності, втрати часу, порушення в роботі обладнання і ліній комунікацій, проникнення комп'ютерних вірусів, втрати і зміни даних, виникнення дефектів в роботі програм. які виникли, незалежно від причин, в результаті використання Сайту.

2.5. У разі здійснення Користувачем дій, передбачених ст. 50 Закону України «Про авторське право і суміжні права» (порушення авторського права і суміжних прав), Компанія залишає за собою право, без попереднього повідомлення Користувача, за своїм вибором здійснювати дії щодо захисту немайнових і майнових авторських прав та суміжних прав в порядку, встановленому адміністративним, цивільним і кримінальним законодавством.

 

3. Порядок і умови оформлення Передплати

 

3.1 Для оформлення Передплати Користувачеві необхідно:

3.1.1 Авторизуватись або зареєструватися на сайті buhgalter.com.ua шляхом заповнення всіх необхідних полів реєстраційної форми

3.1.2 Уважно ознайомитися з умовами договору і прийняти його,

3.1.3 Ввести необхідні для оплати дані, якщо того вимагає Платіжна система; підтвердити оплату і оплатити.

3.2 Оплата доступу до сайту buhgalter.com.ua проводиться Користувачем на умовах 100% передплати.

3.3 Компанія попереджає користувачів, а Користувачі розуміють і погоджуються з тим, що Платіжна система може стягувати понад вартості послуг будь-якого роду комісії та збори, включаючи комісії мобільних операторів (за їх наявності), надаючи свої послуги тільки в разі, якщо такі комісії і збори будуть оплачені користувачем. Інформацію про такі комісії і збори (за їх наявності) Користувач самостійно може дізнатися в Платіжній системі. Комісії та збори не повертаються і не відшкодовуються Компанією. Користувач, який скористався послугами платіжної системи, вважається попередженим і згодним з їх умовами.

3.4 Компанія має право в односторонньому порядку і без попереднього повідомлення Користувача змінювати умови цього договору, наповнення пакетів Підписка, розміри тарифів і т.п. шляхом розміщення відповідного документа в новій редакції на сайті.

3.5 Зміни умов цього Договору набирають чинності з моменту опублікування на сайті buhgalter.com.ua

3.6 Зміни, що стосуються наповнення пакетів Підписка, розмірів тарифів застосовуються тільки для підписок, придбаних після такої зміни.

3.7 Відмова від послуг після оплати неможлива.

3.8 Користувач не має права:

3.8.1 реєструватися як інша особа; вводити в оману інших користувачів щодо своєї особи, використовуючи реєстраційні дані іншої людини; навмисне спотворювати уявлення про самого себе, свій вік або свої відносини з іншими особами або іншими організаціями; передавати реєстраційні дані, логін і пароль для доступу до системи іншим особам;

 

4. Автоподовження підписки

 

4.1 Учасники оплачують доступ до сайту buhgalter.com.ua щомісяця, надають згоду на послуги автоматичного регулярного продовження Підписки на новий термін (автоподовження Підписки). Після активації даної послуги оплата нового терміну Підписки здійснюється шляхом автоматичного безакцептного списання коштів з рахунку користувача. Послуга автоподовження Підписки надається до тих пір, поки Користувач не повідомить про її скасування в особистому кабінеті користувача, заповнивши необхідну форму.

4.2 Послуга вважається скасованою з наступного оплатного періоду.

4.3 Послуга активується при здійсненні першої або чергової оплати Підписки, що означає згоду користувача з тим, що після закінчення оплаченого строку дії Передплати Договір автоматично пролонгується на тих же умовах на той же термін з автоматичним списанням вартості Передплати з рахунку Користувача

4.4 У разі недостатності коштів на рахунку користувача або неможливості проведення платежу Підписка на новий термін не надається, а послуга «автоподовження Підписки» відключається, до моменту появи коштів на рахунку користувача або заміни користувачем рахунку в особистому кабінеті).

4.5 При зміні Товариством тарифів на підписку автоподовження Підписка на черговий новий термін, наступний за періодом, протягом якого відбулася така зміна буде здійснено за новим тарифом.

 

5. Припинення відносин з Компанією. зміна угоди

 

5.1. Компанія і Користувач домовилися, що компанія має право припинити підтримувати Сайт (надавати доступ / надавати послуги) в будь-який час на власний розсуд.

5.2. Компанія залишає за собою право припинити доступ до Сайту, якщо: доступ до Сайту втрачений через відсутність зв'язку на маршруті від Користувача до Сайту; Користувачеві відмовлено в доступі до Сайту внаслідок порушення ним «Інтрукціі користування сайтом» (http://budget.factor.ua/faq.php) або перевищення обсягу прав на використання Сайту.

5.3. Компанія залишає за собою право за своїм вибором без попереднього повідомлення та / або роз'яснення причин: змінювати, виправляти, обмежувати, припиняти чи зупиняти дію Сайту і будь-яких його розділів (матеріалів, ресурсів, сервісів); відмовляти Користувачеві в доступі до користування Сайтом і / або будь-якого його розділу. Задоволення / розгляд потреб Користувача при використанні Сайту не є обов'язком Компанії.

 

6. Заключні положення

 

6.1. Сайт може містити посилання на інші Інтернет - сайти. Дані сайти не перебувають під контролем Компанії і Компанія не несе відповідальності за зміст даних сайтів та / або зміст сайтів, посилання на які знаходяться на даних сайтах. Посилання на інші сайти включені в Сайт тільки для зручності користувачів і не означають згоду Компанії та його посадових осіб з вмістом даних сайтів. Інші Інтернет - сайти можуть містити посилання на Сайт без спеціального дозволу Компанії.

6.2. У разі незгоди Користувача з будь-яким з умов цієї угоди він зобов'язаний негайно припинити використання Сайту і / або будь-якого з його розділів.

6.3. У разі якщо компетентними органами / особами частина цієї угоди буде визнана недійсною, такою, що суперечить законодавству і не підлягає застосуванню, це не тягне неможливість застосування інших положень цієї угоди. Ця угода діє повною мірою в рамках, встановлених чинним законодавством.

6.4. До відносин в рамках цієї Угоди застосовується право України. Користувач і Компанія домовилися підкорятися при виникненні будь-яких спорів, що виникають у зв'язку зі справжньою угодою (використанням Сайту), виключно юрисдикції судів України.

Для того, чтоб распечатать текст необходимо авторизоваться или зарегистрироваться
Закрити
icon-block
Заважає реклама?
Ви маєте можливість її відключити всього за 30 грн