Розробка програмного забезпечення формування податкових звітів

Аналіз формування податкової звітності. Розробка проекту інтерфейсу, інформаційної, статичної та динамічної моделей програмного забезпечення. Розрахунок економічної ефективності впровадження програмного забезпечення формування податкової звітності.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 26.04.2012
Размер файла 3,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Ескізний проект

Прийняття принципових рішень про структуру програмного продукту, всім видам забезпечення

01.09.11- 01.10.11

Ескізний проект

Технічний проект

Вибір інструмента й мови кодування. Формування програмного продукту в цілому. Розробка документації й логічної моделі даних

01.10.11 -11.1111

Технічний проект

Робочий проект

Виготовлення й настроювання компонентів програмного продукту. Розробка фізичної моделі даних.

11.11.11 - 16.12.11

Робочий проект

Введення в експлуатацію

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

16.12.11 - 30.12.11

Протокол досл. функціонування ПП. Акт прийому ПП заказником

8 Порядок приймання й контролю

Випробовування системи виконуються у відповідності з програмою та методикою випробовувань. За результатами випробовувань складається акт прийому-здачі.

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

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

Додаток В

КОД ПРОГРАМИ

//Реалізація інтерфейсу

public class ПЗформуванняподатковоїзвітностіView extends FrameView {

public ПЗформуванняподатковоїзвітностіView(SingleFrameApplication app) {

super(app);

initComponents();

ResourceMap resourceMap = getResourceMap();

int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout");

messageTimer = new Timer(messageTimeout, new ActionListener() {

public void actionPerformed(ActionEvent e) {

statusMessageLabel.setText("");

}

});

messageTimer.setRepeats(false);

int busyAnimationRate = resourceMap.getInteger("StatusBar.busyAnimationRate");

for (int i = 0; i < busyIcons.length; i++) {

busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]");

}

busyIconTimer = new Timer(busyAnimationRate, new ActionListener() {

public void actionPerformed(ActionEvent e) {

busyIconIndex = (busyIconIndex + 1) % busyIcons.length;

statusAnimationLabel.setIcon(busyIcons[busyIconIndex]);

}

});

idleIcon = resourceMap.getIcon("StatusBar.idleIcon");

statusAnimationLabel.setIcon(idleIcon);

progressBar.setVisible(false);

TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext());

taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() {

public void propertyChange(java.beans.PropertyChangeEvent evt) {

String propertyName = evt.getPropertyName();

if ("started".equals(propertyName)) {

if (!busyIconTimer.isRunning()) {

statusAnimationLabel.setIcon(busyIcons[0]);

busyIconIndex = 0;

busyIconTimer.start();

}

progressBar.setVisible(true);

progressBar.setIndeterminate(true);

} else if ("done".equals(propertyName)) {

busyIconTimer.stop();

statusAnimationLabel.setIcon(idleIcon);

progressBar.setVisible(false);

progressBar.setValue(0);

} else if ("message".equals(propertyName)) {

String text = (String)(evt.getNewValue());

statusMessageLabel.setText((text == null) ? "" : text);

messageTimer.restart();

} else if ("progress".equals(propertyName)) {

int value = (Integer)(evt.getNewValue());

progressBar.setVisible(true);

progressBar.setIndeterminate(false);

progressBar.setValue(value);

}

}

});

}

private final Timer messageTimer;

private final Timer busyIconTimer;

private final Icon idleIcon;

private final Icon[] busyIcons = new Icon[15];

private int busyIconIndex = 0;

private JDialog aboutBox;

private JDialog dok1;

}

//Контекстне меню інтерфейсу користувача

fileMenu.text = Документ

helpMenu.text = Допомога

saveMenuItem2.text=Зберегти

saveAllMenuItem3.text=Зберегти всі документи

closeMenuItem4.text=Закрити

closeAllMenuItem5.text=Закрити всі документи

drykMenuItem6.text=Друк

exitMenuItem.text=Вихід

aboutMenuItem.text=Про програму

kontrolMenu1.text=Контроль

kamerPerevirMenuItem2.text=Камеральна перевірка

perevirStryktMenuItem1.text=Перевірка структури

dovidnukuMenu2.text=Довідники

prasivnukuMenuItem4.text=Довідник працюючих

kontragentuMenuItem5.text=Довідник контрагентів

pravulaMenuItem6.text=Правила заповнення документу

nalastyvannjMenu3.text=Налаштування

parametruMenuItem7.text=Персональні параметри

regumuMenuItem8.text=Основні режими

dopomigniDaniMenuItem9.text=Допоміжні дані

openMenuItem1.text=Відкрити

inspekciiMenuItem3.text=Довідник інспекцій

newMenu.text=Новий

jMenu1.text=Прибуток

jMenu2.text=ПДВ та акцизний збір

jMenu3.text=Податкова накладна

jMenu4.text=Місцеві платежі

jMenuItem1.text=Декларація з податку на прибуток підприємства

jMenuItem2.text=Додаток К1/1 до рядків 01.2, 01.5, 04.2, 04.10, 04.12 та 07 декларації

jMenuItem3.text=Додаток К1/2 до рядків 04.10 та 07 декларації

jMenuItem4.text=Додаток К2 до рядків 01.3 та 04.7 декларації

jMenuItem5.text=Додаток К3 до рядка 01.4 декларації

jMenuItem6.text=Додаток К4 до рядків 02.3, 05.3 та 23 декларації

jMenuItem7.text=Додаток К5 до рядка 10 декларації

jMenuItem8.text=Додаток Р1 до рядка 04.6 декларації

jMenuItem9.text=Додаток Р2 до рядка 04.8 декларації

jMenuItem10.text=Податкова декларація з податку на додану вартість

jMenuItem11.text=Розрахунок коригування сум ПДВ до податкової декларації

jMenuItem12.text=Розшифровки подат. зобов'язань та подат. кредиту в розрізі контрагентів

jMenuItem13.text=Розрахунок акцизного збору

jMenuItem14.text=Розшифровка оборотів з продажу

jMenuItem15.text=Розшифровка оборотів, які не підлягають оподаткуванню

jMenuItem16.text=Звіт про нарахування податку з доходів фізичних осіб

jMenuItem17.text=Податкова накладна

jMenuItem18.text=Додаток до податкової накладної

jMenuItem19.text=Розрахунок коригування кількісних і вартісних показників до ПН

jMenuItem20.text=Реєстр отриманих та виданих податкових накладних

jMenuItem21.text=Розрахунок суми податку з власників транспортних засобів

jMenuItem22.text=Податковий розрахунок ринкового збору

jMenuItem23.text=Податковий розрахунок збору з власників собак

jMenuItem24.text=Податковий розрахунок податку з реклами

jMenuItem25.text=Податковий розрахунок збору за припаркування автотранспорту

jMenuItem26.text=Довідка про суми податку з власників транспортних засобів

jMenuItem12.actionCommand=Розшифровки подат. зобов'язань та подат. кредиту в розрізі контрагентів

saveMenuItem2.actionCommand=Зберегти

// Реалізація створення податкового документу для режиму «Документ»,

підрежиму «Новий») Податкові документи реалізуються за однією схемою. Тому, представлена реалізація одного податкового документу - податкової накладної, для інших податкових документів код реалізації не надається.

@Entity

@Table(name = "PNAKLADNA", catalog = "", schema = "APP")

@NamedQueries({

@NamedQuery(name = "Pnakladna.findAll", query = "SELECT p FROM Pnakladna p"),

@NamedQuery(name = "Pnakladna.findByOruginal", query = "SELECT p FROM Pnakladna p WHERE p.oruginal = :oruginal"),

@NamedQuery(name = "Pnakladna.findByKopij", query = "SELECT p FROM Pnakladna p WHERE p.kopij = :kopij"),

@NamedQuery(name = "Pnakladna.findByDatavupuskupnakl", query = "SELECT p FROM Pnakladna p WHERE p.datavupuskupnakl = :datavupuskupnakl"),

@NamedQuery(name = "Pnakladna.findByPodatnomer", query = "SELECT p FROM Pnakladna p WHERE p.podatnomer = :podatnomer"),

@NamedQuery(name = "Pnakladna.findByPlatnukpodatky", query = "SELECT p FROM Pnakladna p WHERE p.platnukpodatky = :platnukpodatky"),

@NamedQuery(name = "Pnakladna.findByMznahpokypza", query = "SELECT p FROM Pnakladna p WHERE p.mznahpokypza = :mznahpokypza"),

@NamedQuery(name = "Pnakladna.findByMznahprodavca", query = "SELECT p FROM Pnakladna p WHERE p.mznahprodavca = :mznahprodavca"),

@NamedQuery(name = "Pnakladna.findByNomsvidreestracii", query = "SELECT p FROM Pnakladna p WHERE p.nomsvidreestracii = :nomsvidreestracii"),

@NamedQuery(name = "Pnakladna.findByNomenklatpostov", query = "SELECT p FROM Pnakladna p WHERE p.nomenklatpostov = :nomenklatpostov"),

@NamedQuery(name = "Pnakladna.findByOdvumtov", query = "SELECT p FROM Pnakladna p WHERE p.odvumtov = :odvumtov"),

@NamedQuery(name = "Pnakladna.findByObsag", query = "SELECT p FROM Pnakladna p WHERE p.obsag = :obsag"),

@NamedQuery(name = "Pnakladna.findByCina", query = "SELECT p FROM Pnakladna p WHERE p.cina = :cina"),

@NamedQuery(name = "Pnakladna.findByObsagdostavku", query = "SELECT p FROM Pnakladna p WHERE p.obsagdostavku = :obsagdostavku"),

@NamedQuery(name = "Pnakladna.findByZagsymkoshtiv", query = "SELECT p FROM Pnakladna p WHERE p.zagsymkoshtiv = :zagsymkoshtiv"),

@NamedQuery(name = "Pnakladna.findByRealnamutter", query = "SELECT p FROM Pnakladna p WHERE p.realnamutter = :realnamutter"),

@NamedQuery(name = "Pnakladna.findByZvilnvidpdv", query = "SELECT p FROM Pnakladna p WHERE p.zvilnvidpdv = :zvilnvidpdv"),

@NamedQuery(name = "Pnakladna.findByPn", query = "SELECT p FROM Pnakladna p WHERE p.pn = :pn")})

public class Pnakladna implements Serializable {

@Transient

private PropertyChangeSupport changeSupport = new PropertyChangeSupport(this);

private static final long serialVersionUID = 1L;

@Column(name = "ORUGINAL")

private String oruginal;

@Column(name = "KOPIJ")

private String kopij;

@Column(name = "DATAVUPUSKUPNAKL")

@Temporal(TemporalType.DATE)

private Date datavupuskupnakl;

@Column(name = "PODATNOMER")

private String podatnomer;

@Column(name = "PLATNUKPODATKY")

private String platnukpodatky;

@Column(name = "MZNAHPOKYPZA")

private String mznahpokypza;

@Column(name = "MZNAHPRODAVCA")

private String mznahprodavca;

@Column(name = "NOMSVIDREESTRACII")

private String nomsvidreestracii;

@Column(name = "NOMENKLATPOSTOV")

private String nomenklatpostov;

@Column(name = "ODVUMTOV")

private String odvumtov;

@Column(name = "OBSAG")

private String obsag;

@Column(name = "CINA")

private String cina;

@Column(name = "OBSAGDOSTAVKU")

private Character obsagdostavku;

@Column(name = "ZAGSYMKOSHTIV")

private String zagsymkoshtiv;

@Column(name = "REALNAMUTTER")

private String realnamutter;

@Column(name = "ZVILNVIDPDV")

private String zvilnvidpdv;

@Id

@Basic(optional = false)

@Column(name = "PN")

private Character pn;

@Override

public int hashCode() { int hash = 0;

hash += (pn != null ? pn.hashCode() : 0);

return hash;

}

@Override

public boolean equals(Object object) {

if (!(object instanceof Pnakladna)) {

return false;

}

Pnakladna other = (Pnakladna) object;

if ((this.pn == null && other.pn != null) || (this.pn != null && !this.pn.equals(other.pn))) {

return false;

}

return true;

}

public void addPropertyChangeListener(PropertyChangeListener listener) {

changeSupport.addPropertyChangeListener(listener);

}

public void removPropertyChangeListener(PropertyChangeListener listener) {

changeSupport.removePropertyChangeListener(listener);

}}

//Реалізіція форми податкової накладної для внесення даних

public class PNakladnaView extends FrameView {

public PNakladnaView(SingleFrameApplication app) {

super(app);

initComponents();

ResourceMap resourceMap = getResourceMap();

int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout");

messageTimer = new Timer(messageTimeout, new ActionListener() {

public void actionPerformed(ActionEvent e) {

statusMessageLabel.setText("");

}

});

//Відображення полів в формі для роботи з податковим документом

platnukpodatkyLabel.text= особа (платник податку) - продавець (покупець):

realnamutterLabel.text=0% (реалізація на митній території України):

realnamutter20Label.text=20%:

realnamutter0Label.text=0% (експорт):

zagsymkoshtivLabel.text= загальна сума коштів, що підлягає оплаті:

obsagdostavkuLabel.text= обсяги поставки (база оподаткування) без урахування ПДВ, що підлягають оподаткуванню за ставками:

cinaLabel.text= ціна поставки одиниці продукції без урахування ПДВ:

obsagLabel.text= кіл-ть (об'єм, обсяг):

odvumtovLabel.text= одиниця виміру товару:

mznahpokypzaLabel.text= місцезнаходження продавця (покупця):

mznahprodavcaLabel.text= місцезнаходження продавця (покупця):

kopijLabel.text=КОПІЯ(залишається у продавця):

oruginalLabel.text=ОРИГІНАЛ(видається покупцю):

datavupuskupnaklLabel.text= дата відвантаж. товарів, (послуг):

nadPokypNadbavkaLabel.text= надано покупцю (надбавка (+) знижка ( - )):

nadPokypZnugkaLabel.text= надано покупцю (надбавка (+) знижка ( - )):

bazaOpodatLabel.text= обсяги поставки (база оподаткування) без урахування ПДВ, що підлягають оподаткуванню за ставками:

tovarTranspVutrLabel.text= товарно-транспортні витрати:

zastavnaTaraLabel.text= зворотна (заставна) тара:

podatnadodvarLabel.text= податок на додану вартість:

zagsymmPDVLabel.text= загальна сума з ПДВ:

sym123Label.text= усього по розділах І + ІI + ІV:

sym1Label.text= усього по розділу І:

query.query=SELECT p FROM Pnakladna p

// Привязка дії створення податкового документу до інтерфейсу користувача

@Action

public void showPNak() {

if (dokPNak == null) {

JFrame mainFrame =

ПЗформуванняподатковоїзвітностіApp.getApplication().getMainFrame();

dokPNak = new PodatNakladna(mainFrame);

dokPNakl.setLocationRelativeTo(mainFrame);

}

ПЗформуванняподатковоїзвітностіApp.getApplication().show(dokPNak);

}

// Реалізація діалогу між ПЗ формування податкової звітності (Податки 2012) та користувачем для заповнення основних полів документу

jDialog1 = new javax.swing.JDialog();

org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(PZFormPodatZv.PZApp.class).getContext().getResourceMap(PZMReg.class);

jDialog1.setTitle(resourceMap.getString("Податки 2012"));

jDialog1.setName("Автозаповнити документ");

jDialog1.setName("Так");

jDialog1.setName("Ні");

jDialog1.addWindowListener(new java.awt.event.WindowAdapter() {

public void windowActivated(java.awt.event.WindowEvent evt) {

jDialog1WindowActivated(evt);

}

public void windowClosed(java.awt.event.WindowEvent evt) {

jDialog1WindowClosed(evt);

}

public void windowOpened(java.awt.event.WindowEvent evt) {

jDialog1WindowOpened(evt);

}

});

// Реалізація діалогу між ПЗ формування податкової звітності (Податки 2012) та користувачем для відкриття додатків

jDialog1 = new javax.swing.JDialog();

org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(PZFormPodatZv.PZApp.class).getContext().getResourceMap(PZMReg.class);

jDialog2.setTitle(resourceMap.getString("Податки 2012"));

jDialog2.setName("Відкрити додатки");

jDialog2.setName("Так");

jDialog2.setName("Ні");

jDialog2.addWindowListener(new java.awt.event.WindowAdapter() {

public void windowActivated(java.awt.event.WindowEvent evt) {

jDialog1WindowActivated(evt);

}

public void windowClosed(java.awt.event.WindowEvent evt) {

jDialog1WindowClosed(evt);

}

public void windowOpened(java.awt.event.WindowEvent evt) {

jDialog1WindowOpened(evt);

}

});

//Реалізація відкриття податкових документів для режиму «Документ», підрежиму «Відкрити»

private class SaveFileTask extends ПЗформуванняподатковоїзвітностіApp.SaveTextFileTask {

SaveFileTask(File file) {

super(ПЗформуванняподатковоїзвітностіView.this.getApplication(), file, textArea.getText());

}

@Override protected void succeeded(Void ignored) { setFile(getFile());

setModified(false);

}

@Override protected void failed(Throwable e) {

logger.log(Level.WARNING, "couldn't save " + getFile(), e);

String msg = getResourceMap().getString("saveFailedMessage", getFile());

String title = getResourceMap().getString("saveFailedTitle");

int type = JOptionPane.ERROR_MESSAGE;

JOptionPane.showMessageDialog(getFrame(), msg, title, type);

}

}

//Привязка дії відкриття податкового документу до інтерфейсу користувача

@Action

public Task open() {

JFileChooser fc = createFileChooser("openFileChooser");

int option = fc.showOpenDialog(getFrame());

Task task = null;

if (JFileChooser.APPROVE_OPTION == option) {

task = new LoadFileTask(fc.getSelectedFile());

}

return task;

}

// Реалізація зберігання поточного податкового документу для режиму «Документ», підрежиму «Зберегти»).

public Task saveAs() {

JFileChooser fc = createFileChooser("saveAsFileChooser");

int option = fc.showSaveDialog(getFrame());

Task task = null;

if (JFileChooser.APPROVE_OPTION == option) {

task = new SaveFileTask(fc.getSelectedFile());

}

return task;

}

//Привязка дії збереження поточного документу до інтерфейсу користувача

@Action

public Task saveAs() {

JFileChooser fc = createFileChooser("saveAsFileChooser");

int option = fc.showSaveDialog(getFrame());

Task task = null;

if (JFileChooser.APPROVE_OPTION == option) {

task = new SaveFileTask(fc.getSelectedFile());

}

return task;

}

// Реалізація зберігання всіх податкових документів для режиму «Документ», підрежиму «Зберегти всі документи»

private class SaveFileAll extends

ПЗформуванняподатковоїзвітностіApp.SaveTextFile {

SaveFileAll (File file) {

super(ПЗформуванняподатковоїзвітностіView.this.getApplication(),

file, textArea.getText());

}

//Привязка дії збереження всіх подат. документів до інтерфейсу користувача

@Action(enabledProperty = "modified")

public Task save() {

return new SaveFileTask(getFile());

}

// Реалізація закриття податкового документу для режиму «Документ», підрежиму «Закрити»

@Action public void closeTask() {

dispose();

}

// Реалізація закриття всіх відкритих податкових документів для режиму «Документ», підрежиму «Закрити всі документи»

private class СloseFileAll extends

ПЗформуванняподатковоїзвітностіApp.CloseTextFile { CloseFileAll (File file) {

super(ПЗформуванняподатковоїзвітностіView.this.getApplication(),

file, textArea.getText());

}

//Привязка дії закриття всіх подат. документів до інтерфейсу користувача

@Action(enabledProperty = "modified")

public Task close() {

return new CloseFileTask(getFile());

}

// Реалізація друку податкових документів режиму «Документ», підрежиму «Друк»

public class FopPrintServlet extends HttpServlet {

public static final String REQUEST_PARAM = "fo";

Logger log = null;

public void doGet(HttpServletRequest request,

HttpServletResponse response) throws ServletException {

if (log == null) {

log = new ConsoleLogger(ConsoleLogger.LEVEL_WARN);

MessageHandler.setScreenLogger(log);

}

try {

String foParam = request.getParameter(FO_REQUEST_PARAM);

if (foParam != null) {

FileInputStream file = new FileInputStream(foParam);

renderFO(new InputSource(file), response);

}

else {

response.setContentType ("text/html");

PrintWriter out = response.getWriter();

out.println("<html><title>Error</title>\n"+ "<body><h1>FopServlet Error</h1><h3>No 'fo' "+ "request param given.</h3></body></html>");

}

} catch (ServletException ex) {

throw ex;

}

catch (Exception ex) {

throw new ServletException(ex);

}

}

public void renderFO(InputSource foFile,

HttpServletResponse response) throws ServletException {

try {

Driver driver = new Driver(foFile, null);

PrinterJob pj = PrinterJob.getPrinterJob();

PrintRenderer renderer = new PrintRenderer(pj);

driver.setLogger (log);

driver.setRenderer(renderer);

driver.run();

reportOK (response);

} catch (Exception ex) {

throw new ServletException(ex);

}

}

public void render(TInputHandler input,

HttpServletResponse response) throws ServletException {

try {

Driver driver = new Driver();

PrinterJob pj = PrinterJob.getPrinterJob();

PrintRenderer renderer = new PrintRenderer(pj);

pj.setCopies(1);

driver.setLogger (log);

driver.setRenderer (renderer);

driver.render (input.getParser(), input.getInputSource());

reportOK (response);

} catch (Exception ex) {

throw new ServletException(ex);

}

}

private void reportOK (HttpServletResponse response)

throws ServletException {

String sMsg =

"<html><title>Success</title>\n" + "<body><h1>FopPrintServlet: </h1>" + "<h3>The requested data was printed</h3></body></html>" ;

response.setContentType ("text/html");

response.setContentLength (sMsg.length());

try {

PrintWriter out = response.getWriter();

out.println (sMsg);

out.flush();

} catch (Exception ex) {

throw new ServletException(ex);

}

}

class PrintRenderer extends AWTRenderer {

private static final int EVEN_AND_ALL = 0;

private static final int EVEN = 1;

private static final int ODD = 2;

private int startNumber;

private int endNumber;

private int mode = EVEN_AND_ALL;

private int copies = 1;

private PrinterJob printerJob;

PrintRenderer(PrinterJob printerJob) {

super(null);

this.printerJob = printerJob;

startNumber = 0 ;

endNumber = -1;

printerJob.setPageable(this);

mode = EVEN_AND_ALL;

String str = System.getProperty("even");

if (str != null) {

try {

mode = Boolean.valueOf(str).booleanValue() ? EVEN : ODD;

} catch (Exception e) {}

}

}

public void stopRenderer(OutputStream outputStream)

throws IOException {

super.stopRenderer(outputStream);

if (endNumber == -1)

endNumber = getPageCount();

Vector numbers = getInvalidPageNumbers();

for (int i = numbers.size() - 1; i > -1; i--)

removePage(

Integer.parseInt((String) numbers.elementAt(i)));

try {

printerJob.print();

} catch (PrinterException e) {

e.printStackTrace();

throw new IOException("Unable to print: " +

e.getClass().getName() + ": " + e.getMessage());

}}

public void renderPage(Page page) {

pageWidth = (int)((float) page.getWidth() / 1000f);

pageHeight = (int)((float) page.getHeight() / 1000f);

super.renderPage(page);

}

private Vector getInvalidPageNumbers() {

Vector vec = new Vector();

int max = getPageCount();

boolean isValid;

for (int i = 0; i < max; i++) {

isValid = true;

if (i < startNumber || i > endNumber) {

isValid = false;

} else if (mode != EVEN_AND_ALL) {

if (mode == EVEN && ((i + 1) % 2 != 0))

isValid = false;

else if (mode == ODD && ((i + 1) % 2 != 1))

isValid = false;

}

if (!isValid)

vec.add(i + "");

} return vec;

}}}

public static void main(String args[]) {

try {

ByteArrayOutputStream fopout=new ByteArrayOutputStream();

FileOutputStream outfile=new FileOutputStream(args[2]);

Driver driver =new Driver();

driver.setOutputStream(fopout); driver.setRenderer(Driver.RENDER_PDF);

Transformer transformer=TransformerFactory

.newInstance().newTransformer(new StreamSource(new File(args[1])));

transformer.transform(new StreamSource(new File(args[0])),

new Result(driver.getContentHandler()));

PdfReader reader = new PdfReader(fopout.toByteArray());

int n = reader.getNumberOfPages();

Document document = new Document(reader.getPageSizeWithRotation(1));

PdfWriter writer = PdfWriter.getInstance(document, outfile);

writer.setEncryption(PdfWriter.STRENGTH40BITS, "pdf", null,

PdfWriter.AllowCopy); document.open();

PdfContentByte cb = writer.getDirectContent(); PdfImportedPage page;

int i = 0;

while (i < n) {

i++;

document.setPageSize(reader.getPageSizeWithRotation(i));

document.newPage();

page = writer.getImportedPage(reader, i);

rotation = reader.getPageRotation(i);

if (rotation == 90 || rotation == 270) {

cb.addTemplate(page, 0, -1f, 1f, 0, 0,

reader.getPageSizeWithRotation(i).height()); }

else {

cb.addTemplate(page, 1f, 0, 0, 1f, 0, 0);

}

System.out.println("Processed page " + i);

}

document.close();

}

catch( Exception e) {

e.printStackTrace();

}}

// Реалізація виходу з ПЗ для режиму «Документ», підрежиму «Вийти»

private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt){

System.exit(0);

}

// Реалізація довідника працюючих для режиму «Довідники», підрежиму «Довідник працюючих» Довідник працюючих та довідник контрагентів реалізуються за однією схемою, тому представляється реалізація тільки для одного довідника, - довідника працюючих

@Entity

@Table(name = "PRACIVNUKU", catalog = "", schema = "APP")

@NamedQueries({

@NamedQuery(name = "Pracivnuku.findAll", query = "SELECT p FROM Pracivnuku p"),

@NamedQuery(name = "Pracivnuku.findByIdentuficaciinuikod", query = "SELECT p FROM Pracivnuku p WHERE p.identuficaciinuikod = :identuficaciinuikod"),

@NamedQuery(name = "Pracivnuku.findByNameplatnuka", query = "SELECT p FROM Pracivnuku p WHERE p.nameplatnuka = :nameplatnuka"),

@NamedQuery(name = "Pracivnuku.findByDataprnaroboty", query = "SELECT p FROM Pracivnuku p WHERE p.dataprnaroboty = :dataprnaroboty"),

@NamedQuery(name = "Pracivnuku.findByDatazvilnennj", query = "SELECT p FROM Pracivnuku p WHERE p.datazvilnennj = :datazvilnennj"),

@NamedQuery(name = "Pracivnuku.findById", query = "SELECT p FROM Pracivnuku p WHERE p.id = :id")})

public class Pracivnuku implements Serializable {

@Transient

private PropertyChangeSupport changeSupport = new PropertyChangeSupport(this);

private static final long serialVersionUID = 1L;

@Column(name = "IDENTUFICACIINUIKOD")

private String identuficaciinuikod;

@Column(name = "NAMEPLATNUKA")

private String nameplatnuka;

@Column(name = "DATAPRNAROBOTY")

@Temporal(TemporalType.DATE)

private Date dataprnaroboty;

@Column(name = "DATAZVILNENNJ")

@Temporal(TemporalType.DATE)

private Date datazvilnennj;

@Id

@Basic(optional = false)

@Column(name = "ID")

//Підключення форми БД довідника працюючих до інтерфейсу користувача

@Action

public void showBDPracivnuku() {

if (aboutBDPRACIVNUKU == null) {

JFrame mainFrame =

ПЗформуванняподатковоїзвітностіApp.getApplication().getMainFrame();

aboutBDPRACIVNUKU = new Pracivnuku(mainFrame);

aboutBDPRACIVNUKU.setLocationRelativeTo(mainFrame);

} ПЗформуванняподатковоїзвітностіApp.getApplication().show(aboutBDPRACIVNUKU);

}

//Реалізація правил заповнення податкових документів для режиму «Довідник», підрежиму «Правила заповнення документів» Реалізація підрежиму правил заповнення податкових документів показана тільки для одного податкового документу (Податкова декларація на прибуток підприємства) оскільки для інших податкових документів реалізація відбувається аналогічним чином, тому код реалізації правил заповнення для інших податкових документів не надається.

<html><tr align="left"> <font size="3"> <U> <p>Рядок 03 ІД = рядок 03 додатка ІД </font></U><controls></p>

<html><tr align="left"> <font size="3"> <U> <p> Рядок 03 ІД = рядок 03 додатка ІД </font></U><controls></p>

<html><tr align="left"> <font size="3"> <U> <p> Рядок 01 = рядок 02 + рядок 03 </font></U><controls></p>

<html><tr align="left"> <font size="3"> <U> <p> Рядок 05.1 СВ = рядок 05.1 додатка СВ </font></U><controls></p>

<html><tr align="left"> Рядок 06.1 ЗВ = рядок 06.1 додатка ЗВ <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 06.2 АВ = рядок 06.2 додатка АВ <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 06.3 ВЗ = рядок 06.3 додатка ВЗ

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 06.5 ІВ = рядок 06.5 додатка ІВ

<font size="3"> <U> <p> Рядок 06 = сума рядків 06.1 - 06.6</font></U><controls></p>

<html><tr align="left"> Рядок 04 = рядок 05 + рядок 06<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 07 = рядок 01 - рядок 04<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 08 ТП = рядок 08 додатка ТП <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 09 ПЗ = рядок 09 додатка ПЗ <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 11 = рядок 07 - рядок 08 - рядок 09 (при позитивному значенні) * рядок 10/100<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 12 ТП = рядок 12 додатка ТП <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 13 ЗП = рядок 13 додатка ЗП <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 14 = рядок 11 + рядок 12 - рядок 13<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 16 = рядок 14 - рядок 15<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 17 ПН = рядок 20 графа 6 таблиця 1 додатка ПН <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 19 = рядок 17 - рядок 18<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 20 АД = рядок 5 додатка АД <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 22 = рядок 20 - рядок 21<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 27 = рядок 23 * 3%<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Рядок 32 = рядок 28 * 3%

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ІД повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Кількість додатків СБ повинна бути заповнена <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ЦП повинна бути заповнена <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка СВ повинна бути заповнена <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка АМ повинна бути заповнена <font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка АК повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ВО повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ЗВ повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка АВ повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ВЗ повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ІВ повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ТП повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ПЗ повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ЗП повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка ПН повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

<html><tr align="left"> Позначка наявності додатка АД повинна бути заповнена

<font size="3"> <U> <p> </font></U><controls></p>

// Реалізація персональних налаштувань для режиму «Налаштування», підрежиму «Персональні налаштування»

package persnal;

public class PersNalView extends FrameView {

public PersNalView(SingleFrameApplication app) {

super(app);

initComponents();

ResourceMap resourceMap = getResourceMap();

int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout");

messageTimer = new Timer(messageTimeout, new ActionListener() {

public void actionPerformed(ActionEvent e) {

statusMessageLabel.setText("");

}

});

messageTimer.setRepeats(false);

int busyAnimationRate=resourceMap.getInteger("StatusBar.busyAnimationRate");

for (int i = 0; i < busyIcons.length; i++) {

busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]");

}

busyIconTimer = new Timer(busyAnimationRate, new ActionListener() {

public void actionPerformed(ActionEvent e) {

busyIconIndex = (busyIconIndex + 1) % busyIcons.length;

statusAnimationLabel.setIcon(busyIcons[busyIconIndex]);

}

});

idleIcon = resourceMap.getIcon("StatusBar.idleIcon");

statusAnimationLabel.setIcon(idleIcon);

progressBar.setVisible(false);

TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext());

taskMonitor.addPropertyChangeListener(newjava.beans.PropertyChangeListener(){

public void propertyChange(java.beans.PropertyChangeEvent evt) {

String propertyName = evt.getPropertyName();

if ("started".equals(propertyName)) {

if (!busyIconTimer.isRunning()) {

statusAnimationLabel.setIcon(busyIcons[0]);

busyIconIndex = 0;

busyIconTimer.start();

}

progressBar.setVisible(true);

progressBar.setIndeterminate(true);

} else if ("done".equals(propertyName)) {

busyIconTimer.stop();

statusAnimationLabel.setIcon(idleIcon);

progressBar.setVisible(false);

progressBar.setValue(0);

} else if ("message".equals(propertyName)) {

String text = (String)(evt.getNewValue());

statusMessageLabel.setText((text == null) ? "" : text);

messageTimer.restart();

} else if ("progress".equals(propertyName)) {

int value = (Integer)(evt.getNewValue());

progressBar.setVisible(true);

progressBar.setIndeterminate(false);

progressBar.setValue(value);

}

}

});

masterTable.getSelectionModel().addListSelectionListener(

new ListSelectionListener() {

public void valueChanged(ListSelectionEvent e) {

firePropertyChange("recordSelected",!isRecordSelected(),isRecordSelected());

}

});

bindingGroup.addBindingListener(new AbstractBindingListener() {

@Override

public void targetChanged(Binding binding, PropertyStateEvent event) {

// save action observes saveNeeded property

setSaveNeeded(true);

}

});

entityManager.getTransaction().begin();

}

public boolean isSaveNeeded() {

return saveNeeded;

}

private void setSaveNeeded(boolean saveNeeded) {

if (saveNeeded != this.saveNeeded) {

this.saveNeeded = saveNeeded;

firePropertyChange("saveNeeded", !saveNeeded, saveNeeded);

}

}

public boolean isRecordSelected() {

return masterTable.getSelectedRow() != -1;

}

@Action

public void newRecord() {

persnal.Reestrdani r = new persnal.Reestrdani();

entityManager.persist(r);

list.add(r);

int row = list.size()-1;

masterTable.setRowSelectionInterval(row, row);

masterTable.scrollRectToVisible(masterTable.getCellRect(row, 0, true));

setSaveNeeded(true);

}

@Action(enabledProperty = "recordSelected")

public void deleteRecord() {

int[] selected = masterTable.getSelectedRows();

List<persnal.Reestrdani> toRemove = new ArrayList<persnal.Reestrdani>(selected.length);

for (int idx=0; idx<selected.length; idx++) {

persnal.Reestrdani r = list.get(masterTable.convertRowIndexToModel(selected[idx]));

toRemove.add(r);

entityManager.remove(r);

}

list.removeAll(toRemove);

setSaveNeeded(true);

}

@Action(enabledProperty = "saveNeeded")

public Task save() {

return new SaveTask(getApplication());

}

private class SaveTask extends Task {

SaveTask(org.jdesktop.application.Application app) {

super(app);

}

@Override protected Void doInBackground() {

try {

entityManager.getTransaction().commit();

entityManager.getTransaction().begin();

} catch (RollbackException rex) {

rex.printStackTrace();

entityManager.getTransaction().begin();

List<persnal.Reestrdani> merged = new ArrayList<persnal.Reestrdani>(list.size());

for (persnal.Reestrdani r : list) {

merged.add(entityManager.merge(r));

}

list.clear();

list.addAll(merged);

}

return null;

}

@Override protected void finished() {

setSaveNeeded(false);

}

}

@Action

public Task refresh() {

return new RefreshTask(getApplication());

}

private class RefreshTask extends Task {

RefreshTask(org.jdesktop.application.Application app) {

super(app);

}

@SuppressWarnings("unchecked")

@Override protected Void doInBackground() {

try {

setProgress(0, 0, 4);

setMessage("Rolling back the current changes...");

setProgress(1, 0, 4);

entityManager.getTransaction().rollback();

Thread.sleep(1000L); // remove for real app

setProgress(2, 0, 4);

setMessage("Starting a new transaction...");

entityManager.getTransaction().begin();

Thread.sleep(500L); // remove for real app

setProgress(3, 0, 4);

setMessage("Fetching new data...");

java.util.Collection data = query.getResultList();

for (Object entity : data) {

entityManager.refresh(entity);

}

Thread.sleep(1300L); // remove for real app

setProgress(4, 0, 4);

Thread.sleep(150L); // remove for real app

list.clear();

list.addAll(data);

} catch(InterruptedException ignore) { }

return null;

}

@Override protected void finished() {

setMessage("Done.");

setSaveNeeded(false);

}

}

private final Timer messageTimer;

private final Timer busyIconTimer;

private final Icon idleIcon;

private final Icon[] busyIcons = new Icon[15];

private int busyIconIndex = 0;

private JDialog aboutBox;

private boolean saveNeeded;

}

@Entity

@Table(name = "REESTRDANI", catalog = "", schema = "APP")

@NamedQueries({

@NamedQuery(name = "Reestrdani.findAll", query = "SELECT r FROM Reestrdani r"),

@NamedQuery(name = "Reestrdani.findByTupplatnuka", query = "SELECT r FROM Reestrdani r WHERE r.tupplatnuka = :tupplatnuka"),

@NamedQuery(name = "Reestrdani.findByKoddpi", query = "SELECT r FROM Reestrdani r WHERE r.koddpi = :koddpi"),

@NamedQuery(name = "Reestrdani.findByKodedrpoy", query = "SELECT r FROM Reestrdani r WHERE r.kodedrpoy = :kodedrpoy"),

@NamedQuery(name = "Reestrdani.findByNazvaplatnuka", query = "SELECT r FROM Reestrdani r WHERE r.nazvaplatnuka = :nazvaplatnuka"),

@NamedQuery(name = "Reestrdani.findByNomersvidoctvapdv", query = "SELECT r FROM Reestrdani r WHERE r.nomersvidoctvapdv = :nomersvidoctvapdv"),

@NamedQuery(name = "Reestrdani.findByIndpodnomer", query = "SELECT r FROM Reestrdani r WHERE r.indpodnomer = :indpodnomer"),

@NamedQuery(name = "Reestrdani.findByVuddijln", query = "SELECT r FROM Reestrdani r WHERE r.vuddijln = :vuddijln"),

@NamedQuery(name = "Reestrdani.findByPostind", query = "SELECT r FROM Reestrdani r WHERE r.postind = :postind"),

@NamedQuery(name = "Reestrdani.findByPostad", query = "SELECT r FROM Reestrdani r WHERE r.postad = :postad"),

@NamedQuery(name = "Reestrdani.findByTelefon", query = "SELECT r FROM Reestrdani r WHERE r.telefon = :telefon"),

@NamedQuery(name = "Reestrdani.findByFaks", query = "SELECT r FROM Reestrdani r WHERE r.faks = :faks"),

@NamedQuery(name = "Reestrdani.findByEmail", query = "SELECT r FROM Reestrdani r WHERE r.email = :email"),

@NamedQuery(name = "Reestrdani.findByDrfodurektora", query = "SELECT r FROM Reestrdani r WHERE r.drfodurektora = :drfodurektora"),

@NamedQuery(name = "Reestrdani.findByPibdurectora", query = "SELECT r FROM Reestrdani r WHERE r.pibdurectora = :pibdurectora"),

@NamedQuery(name = "Reestrdani.findByDrfobyhgaltera", query = "SELECT r FROM Reestrdani r WHERE r.drfobyhgaltera = :drfobyhgaltera"),

@NamedQuery(name = "Reestrdani.findByPibbyhgaltera", query = "SELECT r FROM Reestrdani r WHERE r.pibbyhgaltera = :pibbyhgaltera"),

@NamedQuery(name = "Reestrdani.findById", query = "SELECT r FROM Reestrdani r WHERE r.id = :id")})

public class Reestrdani implements Serializable {

@Transient

private PropertyChangeSupport changeSupport = new PropertyChangeSupport(this);

private static final long serialVersionUID = 1L;

@Column(name = "TUPPLATNUKA")

private String tupplatnuka;

@Column(name = "KODDPI")

private String koddpi;

@Column(name = "KODEDRPOY")

private String kodedrpoy;

@Column(name = "NAZVAPLATNUKA")

private String nazvaplatnuka;

@Column(name = "NOMERSVIDOCTVAPDV")

private String nomersvidoctvapdv;

@Column(name = "INDPODNOMER")

private String indpodnomer;

@Column(name = "VUDDIJLN")

private String vuddijln;

@Column(name = "POSTIND")

private String postind;

@Column(name = "POSTAD")

private Character postad;

@Column(name = "TELEFON")

private Integer telefon;

@Column(name = "FAKS")

private Integer faks;

@Column(name = "EMAIL")

private String email;

@Column(name = "DRFODUREKTORA")

private String drfodurektora;

@Column(name = "PIBDURECTORA")

private String pibdurectora;

@Column(name = "DRFOBYHGALTERA")

private String drfobyhgaltera;

@Column(name = "PIBBYHGALTERA")

private String pibbyhgaltera;

@Id

@Basic(optional = false)

@Column(name = "ID")

private String id;

public Reestrdani() {

}

public Reestrdani(String id) {

this.id = id;

}

public String getTupplatnuka() {

return tupplatnuka;

}

public void setTupplatnuka(String tupplatnuka) {

String oldTupplatnuka = this.tupplatnuka;

this.tupplatnuka = tupplatnuka;

changeSupport.firePropertyChange("tupplatnuka", oldTupplatnuka, tupplatnuka);

}

public String getKoddpi() {

return koddpi;

}

public void setKoddpi(String koddpi) {

String oldKoddpi = this.koddpi;

this.koddpi = koddpi;

changeSupport.firePropertyChange("koddpi", oldKoddpi, koddpi);

}

public String getKodedrpoy() {

return kodedrpoy;

}

public void setKodedrpoy(String kodedrpoy) {

String oldKodedrpoy = this.kodedrpoy;

this.kodedrpoy = kodedrpoy;

changeSupport.firePropertyChange("kodedrpoy", oldKodedrpoy, kodedrpoy);

}

public String getNazvaplatnuka() {

return nazvaplatnuka;

}

public void setNazvaplatnuka(String nazvaplatnuka) {

String oldNazvaplatnuka = this.nazvaplatnuka;

this.nazvaplatnuka = nazvaplatnuka;

changeSupport.firePropertyChange("nazvaplatnuka", oldNazvaplatnuka, nazvaplatnuka);

}

public String getNomersvidoctvapdv() {

return nomersvidoctvapdv;

}

public void setNomersvidoctvapdv(String nomersvidoctvapdv) {

String oldNomersvidoctvapdv = this.nomersvidoctvapdv;

this.nomersvidoctvapdv = nomersvidoctvapdv;

changeSupport.firePropertyChange("nomersvidoctvapdv", oldNomersvidoctvapdv, nomersvidoctvapdv);

}

public String getIndpodnomer() {

return indpodnomer;

}

public void setIndpodnomer(String indpodnomer) {

String oldIndpodnomer = this.indpodnomer;

this.indpodnomer = indpodnomer;

changeSupport.firePropertyChange("indpodnomer", oldIndpodnomer, indpodnomer);

}

public String getVuddijln() {

return vuddijln;

}

public void setVuddijln(String vuddijln) {

String oldVuddijln = this.vuddijln;

this.vuddijln = vuddijln;

changeSupport.firePropertyChange("vuddijln", oldVuddijln, vuddijln);

}

public String getPostind() {

return postind;

}

public void setPostind(String postind) {

String oldPostind = this.postind;

this.postind = postind;

changeSupport.firePropertyChange("postind", oldPostind, postind);

}

public Character getPostad() {

return postad;

}

public void setPostad(Character postad) {

Character oldPostad = this.postad;

this.postad = postad;

changeSupport.firePropertyChange("postad", oldPostad, postad);

}

public Integer getTelefon() {

return telefon;

}

public void setTelefon(Integer telefon) {

Integer oldTelefon = this.telefon;

this.telefon = telefon;

changeSupport.firePropertyChange("telefon", oldTelefon, telefon);

}

public Integer getFaks() {

return faks;

}

public void setFaks(Integer faks) {

Integer oldFaks = this.faks;

this.faks = faks;

changeSupport.firePropertyChange("faks", oldFaks, faks);

}

public String getEmail() {

return email;

}

public void setEmail(String email) {

String oldEmail = this.email;

this.email = email;

changeSupport.firePropertyChange("email", oldEmail, email);

}

public String getDrfodurektora() {

return drfodurektora;

}

public void setDrfodurektora(String drfodurektora) {

String oldDrfodurektora = this.drfodurektora;

this.drfodurektora = drfodurektora;

changeSupport.firePropertyChange("drfodurektora", oldDrfodurektora, drfodurektora);

}

public String getPibdurectora() {

return pibdurectora;

}

public void setPibdurectora(String pibdurectora) {

String oldPibdurectora = this.pibdurectora;

this.pibdurectora = pibdurectora;

changeSupport.firePropertyChange("pibdurectora", oldPibdurectora, pibdurectora);

}

public String getDrfobyhgaltera() {

return drfobyhgaltera;

}

public void setDrfobyhgaltera(String drfobyhgaltera) {

String oldDrfobyhgaltera = this.drfobyhgaltera;

this.drfobyhgaltera = drfobyhgaltera;

changeSupport.firePropertyChange("drfobyhgaltera", oldDrfobyhgaltera, drfobyhgaltera);

}

public String getPibbyhgaltera() {

return pibbyhgaltera;

}

public void setPibbyhgaltera(String pibbyhgaltera) {

String oldPibbyhgaltera = this.pibbyhgaltera;

this.pibbyhgaltera = pibbyhgaltera;

changeSupport.firePropertyChange("pibbyhgaltera", oldPibbyhgaltera, pibbyhgaltera);

}

public String getId() {

return id;

}

public void setId(String id) {

String oldId = this.id;

this.id = id;

changeSupport.firePropertyChange("id", oldId, id);

}

@Override

public int hashCode() {

int hash = 0;

hash += (id != null ? id.hashCode() : 0);

return hash;

}

@Override

public boolean equals(Object object) {

// TODO: Warning - this method won't work in the case the id fields are not set

if (!(object instanceof Reestrdani)) {

return false;

}

Reestrdani other = (Reestrdani) object;

if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {

return false;

}

return true;

}

@Override

public String toString() {

return "persnal.Reestrdani[ id=" + id + " ]";

}

public void addPropertyChangeListener(PropertyChangeListener listener) {

changeSupport.addPropertyChangeListener(listener);

}

public void removePropertyChangeListener(PropertyChangeListener listener) {

changeSupport.removePropertyChangeListener(listener);

}

}

//Реалізація відомостей про ПЗ для режиму «Допомога», підрежиму «Про програму» Реалізація режиму «Допомога» підрежимів «Основні режими» та «Допоміжні дані» відбувається аналогічно до реалізації підрежиму «Про програму», тому код вище вказаних підрежимів («Основні режими» та «Допоміжні дані») реалізації не надається

//Організація форми для надання відомостей про ПЗ

public ПЗформуванняподатковоїзвітностіAboutPZ(java.awt.Frame parent) {

super(parent);

initComponents();

}

//Підключення форми з інформацією про ПЗ до інтерфейсу користувача

@Action

public void showPZ() {

if (aboutPZ == null) {

JFrame mainFrame =

ПЗформуванняподатковоїзвітностіApp.getApplication().getMainFrame();

aboutPZ = new ПЗформуванняподатковоїзвітностіAboutPZ(mainFrame);

aboutPZ.setLocationRelativeTo(mainFrame);

}

ПЗформуванняподатковоїзвітностіApp.getApplication().show(aboutPZ);

}

//Інформація, яка відображається в формі про ПЗ

appDescLabel.text = <html><tr align="center"> Дане програмне забезпечення призначене для формування податкової звітності в електронному вигляді згідно наказу Державної податкової адміністрації України від 3 травня 2006 року № 242 «Про затвердження формату (стандарту) електронного документа звітності платників податків» зі змінами які внесені наказом від 5 грудня 2007 року № 670 «Про внесення змін до формату (стандарту) електронного документа звітності платників податків»

//Закриття форми про ПЗ

private void exitForm(java.awt.event.WindowEvent evt) {

System.exit(0);

}

Додаток Г

ПРОГРАМА І МЕТОДИКА ВИПРОБУВАНЬ ПЗ ФОРМУВАННЯ ПОДАТКОВОЇ ЗВІТНОСТІ

Об'єкт випробовувань

Об'єктом випробування є програмне забезпечення формування податкової звітності («Податки 2012»), яке призначається для формування податкової звітності в електронному вигляді.

Мета випробовувань

Мета проведення випробовувань - перевірити відповідність характеристик та функцій програмного забезпечення формування податкової звітності «Податки 2012» характеристикам та функціям вказаним в технічному завданні.

Вимоги до програмного забезпечення

Функціонування ПЗ не повинно призводити до збою системи та порушень роботи в системі. Також дана розробка повинна забезпечити виконання вимог до функціонування ПЗ згідно технічного завдання, тобто забезпечити виконання в ньому наступних функцій:

1) Функція, яка надасть змогу працювати з податковими документами (в електронному вигляді) згідно затвердженим форматів ДПА (декларація з податку на прибуток підприємства; додаток К1/1 до рядків 01.2, 01.5, 04.2, 04.10, 04.12 та 07 декларації (Розрахунок приросту (убутку) балансової вартості запасів; Розрахунок амортизаційних відрахувань; Витрати на поліпшення основних фондів, що включаються до складу валових витрат; Прибуток від продажу землі; Витрати зі страхування); додаток К1/2 до рядків 04.10 та 07 декларації (Розрахунок амортизації витрат, пов'язаних з видобутком корисних копалин; Витрати на поліпшення нафтогазових свердловин, що включаються до складу валових витрат; Довідкові відомості (у розрізі окремого родовища, окремої шахти, свердловини, крім нафтогазової)); додаток К2 до рядків 01.3 та 04.7 декларації (Доходи та витрати, пов'язані з виконанням довгострокових договорів; Додаткова інформація); додаток К3 до рядка 01.4 декларації (Розрахунок фінансових результатів операцій з цінними паперами та деривативами); додаток К4 до рядків 02.3, 05.3 та 23 декларації (Урегулювання сумнівної (безнадійної) заборгованості); додаток К5 до рядка 10 декларації (Підстави для застосування пільги); додаток Р1 до рядка 04.6 декларації (Суми нарахованих податків, зборів (обов'язкових платежів), що включаються до валових витрат)); додаток Р2 до рядка 04.8 декларації (Витрати на добровільне перерахування коштів, передачу товарів (виконання робіт, надання послуг)); податкова декларація з податку на додану вартість (переробного підприємства); розрахунок коригування сум ПДВ до податкової декларації з податку на додану вартість (переробного підприємства); розшифровки податкових зобов'язань та податкового кредиту в розрізі контрагентів; розрахунок акцизного збору; до розрахунку акцизного збору (Розшифровка оборотів з продажу, обчислених за максимальними роздрібними цінами на підакцизні товари (продукцію), встановленими виробником або імпортером таких товарів); розшифровка оборотів, які не підлягають оподаткуванню, до розрахунку акцизного збору; звіт про нарахування податку з доходів фізичних осіб, що утримується з грошового забезпечення; податкова накладна; додаток до податкової накладної; розрахунок коригування кількісних і вартісних показників до податкової накладної; реєстр отриманих та виданих податкових накладних; Додаток до податкової накладної; розрахунок питомої ваги доходу від реалізації сільськогосподарської продукції власного виробництва та продуктів її переробки в загальній сумі валового доходу підприємства; розрахунок суми податку з власників транспортних засобів та інших самохідних машин і механізмів; податковий розрахунок ринкового збору; податковий розрахунок збору з власників собак; податковий розрахунок податку з реклами; податковий розрахунок комунального податку; податковий розрахунок фіксованого сільськогосподарського податку; податковий розрахунок збору за припаркування автотранспорту; довідка про суми податку з власників транспортних засобів та інших самохідних машин і механізмів, які зменшують або збільшують податкові зобов'язання в результаті виправлення самостійно виявленої помилки, допущеної в попередніх звітних періодах).


Подобные документы

  • Етапи розробки проекту. Вимоги до апаратного і програмного забезпечення, до користувача. Специфікація та структура даних, які мають бути розміщеними в системі. Вигляд інтерфейсу системи програмного забезпечення. Розробка бази даних косметичного салону.

    дипломная работа [1,8 M], добавлен 21.02.2015

  • Аналіз сучасних методів та технологій проектування програмного забезпечення. Вибір цільової мобільної платформи. Розробка екранних форм, діаграми класів. Вимоги до програмного продукту. Аналіз небезпечних факторів у відділі роботи з фізичними особами.

    дипломная работа [508,1 K], добавлен 02.12.2015

  • Аналіз предметної області, опис проекту бази даних, моделей майбутнього програмного забезпечення гри для персонального комп'ютера "Міста". Функціональні можливості програмного забезпечення, які необхідно реалізувати. Інтерфейс програмного забезпечення.

    курсовая работа [2,3 M], добавлен 02.06.2016

  • Методи аналізу та засоби забезпечення надійності, що використовуються при проектуванні програмного забезпечення. Основні види складності. Якісні та кількісні критерії. Ієрархічна структура. Попередження помилок. Реалізація статичної і динамічної моделей.

    реферат [128,2 K], добавлен 20.06.2015

  • Аналіз задач, які вирішуються з використанням інформаційної системи. Вибір серверного вирішення, клієнтської частини, мережного вирішення, системного програмного забезпечення. Розробка підсистеми діагностики, керування, забезпечення безпеки даних.

    курсовая работа [1,5 M], добавлен 22.04.2011

  • Аналіз системи збору первинної інформації та розробка структури керуючої ЕОМ АСУ ТП. Розробка апаратного забезпечення інформаційних каналів, структури програмного забезпечення. Алгоритми системного програмного забезпечення. Опис програмних модулів.

    дипломная работа [1,9 M], добавлен 19.08.2012

  • Розробка програмного забезпечення для управління транспортними платформами на базі програмованого логічного контролера S7-300 в Simatic STEP-7. Аналіз програмного забезпечення, розрахунок показників його надійності. Опис алгоритму функціонування системи.

    дипломная работа [2,1 M], добавлен 17.05.2012

  • Аналіз технічного забезпечення, вибір інструментального програмного забезпечення та середовища розробки програм. Створення класів для реалізації необхідних функцій для роботи програмного засобу. Розробка інтерфейсу для користувача та лістинг програми.

    курсовая работа [343,9 K], добавлен 24.08.2012

  • Проблеми розробки компонентного програмного забезпечення автоматизованих систем управління. Сучасні компонентні технології обробки інформації. Аналіз вибраного середовища проектування програмного забезпечення: мова програмування PHP та Apache HTTP-сервер.

    дипломная работа [2,8 M], добавлен 11.05.2012

  • Аналіз методів емпіричної інженерії програмного забезпечення. Призначення та властивості програмного забезпечення та метрик проектів Openproj-1.4-src, TalendOpen Studio 3.2.1 та Рlazma-source 0.1.8, їх статистичний, кореляційний та регресійний аналіз.

    курсовая работа [2,7 M], добавлен 12.12.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.