Title Tues 1 Кирил TUES

Размер: px
Започни от страница:

Download "Title Tues 1 Кирил TUES"

Препис

1 Title Tues 1

2 Editors Основният начин за създаване и модифициране на ресурси в Eclipse са Редакторите. Съществуват значителен брой редактори от найпростите текстови редактори до по-сложни редактори включващи няколко страници. Пример за такъв редактор е редакторът за MANIFEST.MF и plugin.xml. В този случай два различни файла се редактират едновременно с един и същи редактор. Всеки plugin може да предостави редактор като използва същия extension point както всички други редактори. Редакторите следват следния цикъл на живот: Отваряне на файл -> Редактиране -> Затваряне. 2

3 Редактори 3

4 Редактори 4

5 Редактори 5

6 Title Пример: Да се изгради редактор редактиращ списък от низове. Редакторът трябва да работи с файлове с разширение.listeditor. Във визуалната си част редакторът ще изобразява низовете като списък. Към списъка може да се добавят и изтриват низове. Действията ще се извършват чрез избор от контекстно меню. 6

7 Title 7

8 Title Използваме следния extension point <extension point="org.eclipse.ui.editors"> <editor class="org.elsys.pluginsample.editor." extensions="listeditor" icon="icons/sample.gif" id="org.elsys.pluginsample.editor1" name="elsys List Editor"> </editor> </extension> class класът реализиращ редактора. Трябва да е наследник на org.eclipse.ui.ieditorpart extension разширението на файловете, които може да се отварят с този редактор name име подходящо за потребителя. 8

9 Зависимости В реализирането на редактора ще използваме част от предоставените от Eclipse класове. Необходимо е да добавиме следните зависимости към MANIFEST.MF Require-Bundle : org.eclipse.core.runtime, org.eclipse.ui, org.eclipse.ui.ide, org.eclipse.core.resources 9

10 Логиката на редактора се реализира от класа org.elsys.pluginsample.editor.. Класът трябва да имплементира org.eclipse.ui.ieditorpart. IEditorPart има подразбираща се изплементация, от която може да се възползваме org.eclipse.ui.part.editorpart 10

11 public class extends EditorPart { private List<String> fcontent; private boolean fisdirty; private ListViewer fviewer; private AddAction faddaction; private DeleteAction fdeleteaction; private IFile finputfile; /*... code missed... */ 11

12 fcontent списъкът от низове, който искаме да редактираме fisdirty показва дали файлът е редактиран и може ли да се запамети. fviewer променлива от тип org.eclipse.jface.viewers.listviewer този viewer, за да изобразим списъка fcontent. Ще използваме faddaction, fdeleteaction създадени от нас класове извършващи добавяне/изтриване на низ от списъка finputfile поле от тип org.eclipse.core.resources.ifile изобразяващо текущо редактирания файл. Посредством това поле можем да достъпим файла, неговото съдържание, родител, път до файла и др. 12

13 public class extends EditorPart { public void dosave(iprogressmonitor monitor) { private IWorkspaceRunnable createfilesaverunnable() { public void dosaveas() { public ListViewer getviewer() { public List<String> getcontent() { public void init(ieditorsite site, IEditorInput input) throws PartInitException { public boolean isdirty() { public boolean issaveasallowed() { public void setdirty() { public void createpartcontrol(composite parent) { private void createactions() { private void createcontextmenu() { private void fillcontextmenu(imenumanager menumgr) { protected void fillbody(composite parent) { public void setfocus() { 13

14 public void dosaveas() { - Методът се използва ако изскаме да дадем възможност на редактора да запаметява съдържанието под нов файл. public boolean issaveasallowed() { return false; -Редакторът намя да поддържа Save As public ListViewer getviewer() { return fviewer; public List<String> getcontent() { return fcontent; Методи за достъп да съответните полета от класа public void setfocus() {- Извиква се от средата когато редакторът получи фокуса на мишката и клавиетурата. 14

15 public boolean isdirty() { return fisdirty; public void setdirty() { fisdirty = true; firepropertychange(ieditorpart.prop_dirty); Файлът е редактиран. Необходимо е неактивният Save бутон в лентата с инструменти да стане активен. Необходимо е менюто File->Save да стане активно. Необходимо е в прозореца на редактора да се изобрази *. Добавяме метода setdirty(), който уведомява всички интересуващи се за това, че състоянието на редактора се е променило. Методът isdirty() ще бъде извикан, когато трябва да се определи състоянието на Save менюто. Ако методът върне true то менюто ще е активно. 15

16 public void init(ieditorsite site, IEditorInput input) throws PartInitException { finputfile = (IFile) input.getadapter(ifile.class); if (finputfile == null) throw new IllegalArgumentException( "The input must be adaptable to IFile"); try { InputStream in = finputfile.getcontents(); ObjectInputStream objectstream = new ObjectInputStream(in); fcontent = (List<String>) objectstream.readobject(); catch (Exception e) { e.printstacktrace(); fcontent = new ArrayList<String>(); fisdirty = false; setsite(site); setinput(input); 16

17 Методът init е първият, който ще се извика в работата на редактора. Има за цел да инициализира редактора и да зададе входните му данни на база получения обект input. Тъй като нашият редактор работи с файлове проверяваме дали полученият обект може да се адаптира към обект от тип IFile. finputfile = (IFile) input.getadapter(ifile.class); При отварянето си редакторът трябва да е чист - не може да се извърши запаметяване. fisdirty = false; setsite(site); setinput(input); Базовият клас изисква да извикаме и методите setsite() и setinput(). 17

18 Следващият метод, който ще се извика след init() е createpartcontrol() public void createpartcontrol(composite parent) { Composite composite = new Group(parent, SWT.NONE); composite.setlayout(new GridLayout(1, false)); composite.setlayoutdata(new GridData(GridData.FILL)); fillbody(composite); createactions(); createcontextmenu(); Методът има за цел да създаде визуалната част на редактора. Методите fillbody(), createactions(), createcontextmenu() ще бъдат допълнени в процеса на разработка. 18

19 protected void fillbody(composite parent) { ListViewer viewer = new ListViewer(parent, SWT.BORDER SWT.SINGLE); GridData data = new GridData(GridData.FILL_BOTH); viewer.getlist().setlayoutdata(data); viewer.setcontentprovider(new ListContentProvider()); viewer.setlabelprovider(new LabelProvider()); viewer.setinput(fcontent); fviewer = viewer; Методът fillbody() създава нов viewer от тип ListViewer. За ContentProvider - ще създадем клас ListContentProvider. За LabelProvider - Използваме org.eclipse.jface.viewers.labelprovider, който по подразбиране се обръща към метода tostring() на подадените му обекти. Тази функционалност ни е достатъчна. 19

20 private static class ListContentProvider implements IStructuredContentProvider { public Object[] getelements(object inputelement) { if (inputelement instanceof List) { List list = (List) inputelement; return list.toarray(new Object[list.size()]); throw new IllegalArgumentException("Unsupported input element"); /*... code missed... */ 20

21 private void createactions() { faddaction = new AddAction(this, fcontent, fviewer); fdeleteaction = new DeleteAction(this, fcontent, fviewer); Логиката за добавяне и изтриване на низ от списъка ще бъде капсулирана в отделни класове. Методът createactions() е добавен от нас и има за цел да инициализира обектите faddaction и fdeleteaction. 21

22 private void createcontextmenu() { MenuManager menumgr = new MenuManager("#PopupMenu"); menumgr.setremoveallwhenshown(true); menumgr.addmenulistener(new IMenuListener() { public void menuabouttoshow(imenumanager m) {.this.fillcontextmenu(m); ); org.eclipse.swt.widgets.list list = fviewer.getlist(); Menu menu = menumgr.createcontextmenu(list); list.setmenu(menu); getsite().registercontextmenu(menumgr, fviewer); Редакцията ще се извършва посредством действия от контексното меню. Методът createcontextmenu() има за цел да създаде това меню и да го регистрира в сайта на редактора. Всеки редактор се намира в съответния контейтер предоставен от средата. Този контейнер се нарича сайт site и може да бъде достъпен чрез getsite(). 22

23 Преди менюто да бъде показано то трябва да бъде запълнено със съответните елементи. Това се извършва от метода fillcontextmenu(). Този метод се вика преди всяко показване на менюто. Това ни позвалява да променяме характеристиките и броя на действията показани в менюто на база на някакво условие. private void fillcontextmenu(imenumanager menumgr) { menumgr.add(faddaction); menumgr.add(fdeleteaction); menumgr.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS)); 23

24 Методът dosave() ще се извика при запаметяване на файла. public void dosave(iprogressmonitor monitor) { IWorkspaceRunnable runnable = createfilesaverunnable(); try { ResourcesPlugin.getWorkspace().run(runnable, monitor); fisdirty = false; firepropertychange(ieditorpart.prop_dirty); catch (CoreException e) { e.printstacktrace(); 24

25 Eclipse е отворена платформа. Броят на plugin-ите е неограничен. Неограничена е и тяхната функционалност и действия. Всички pluginи са равнопоставени. Всички разработвани проекти стоят в така наречения workspace. Всяка инстанция на платформата разполага само с един workspace. Следователно възможно е извършване на асинхронна промяна на едни и същи данни от страна на различни plugin-и, което ще доведе до загуба на информация. Един от подходите за решаване на този проблем е докато един plugin променя workspace-а всики останали да чакат. Организира се опашка от заявки за промяна на workspace-а. Такава заявка трябва да е от тип org.eclipse.core.resources.iworkspacerunnable. Достъпът до workspace-а се извършва чрез ResourcesPlugin.getWorkspace(). Методът ResourcesPlugin.getWorkspace().run() и синхронен за извикващата нишка и я блокира до приключването на неговата работа. 25

26 След като заявката приключи е необходимо да се съобщи на всички интересуващи се ще състоянието е променено fisdirty = false; firepropertychange(ieditorpart.prop_dirty); Добавяме метода createfilesaverunnable(), който ще използваме да създаваме заявки за запаметяване на файла. Отделянето кода за изпълнение на заявката и кода за създаване на заявката позволяват по-лесна промяна на функционалността и подобро капсулиране на данните. 26

27 private IWorkspaceRunnable createfilesaverunnable() { IWorkspaceRunnable runnable = new IWorkspaceRunnable() { public void run(iprogressmonitor monitor) throws CoreException { try { monitor.begintask("saving file...", 10); monitor.worked(2); if (monitor.iscanceled()) throw new OperationCanceledException(); ByteArrayOutputStream os = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(os); oos.writeobject(fcontent); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); oos.close(); os.close(); finputfile.setcontents(is, IResource.FORCE, new SubProgressMonitor(monitor, 9)); catch (Exception e) { e.printstacktrace(); finally { monitor.done(); ; return runnable; 27

28 Съдържанието на списъка fcontent трябва да се запамети във файла. За целта използваме метода IFile.setContents(). Необходимо е преди това да представиме съдържанието, което искаме да запишем като обект от тип InputStream. ByteArrayOutputStream os = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(os); oos.writeobject(fcontent); ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); oos.close(); os.close(); finputfile.setcontents(is, IResource.FORCE, new SubProgressMonitor(monitor, 9)); 28

29 След като стартираме plugin-а трябва да създадем нов проект. File->New->Project. Даваме име на проекта примерно SampleProject. След това създаваме нов файл в този проект изпозвайки File->New- >File. Важното е файлът да е с разширение listeditor. Създаденият файл може да се отвори с няколко редактора включително и с обикновен текстов редактор. Може да определим желания редактор чрез менюто Open With от контексното меню за дадения файл. 29

30 30

31 Упражнение Използване на готовия код: Проект съдържащ класовете, AddAction, DeleteAction. Необходимо е да добавите: зависимостите в MANIFEST.MF необходимия extension point в plugin.xml липсващите методи и полета в 31

32 Copyright This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.5 Bulgaria License. To view a copy of this license, visit creativecommons.org/licenses/by-nc-sa/2.5/bg/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. 32

Eclipse TUES 1 Кирил TUES

Eclipse TUES 1 Кирил TUES Eclipse JFace @ TUES 1 Същност SWT предоставя много възможности за развитие на потребителския интерфейс. Неудобството се изразява в това, че при представяне на данните се използват прости типове като низове,

Подробно

Eclipse Tues: Overview 1

Eclipse Tues: Overview 1 Eclipse Eclipse @ Tues: Overview 1 Eclipse Eclipse is an open source community whose projects are focused on building an open development platform comprised of extensible frameworks, tools and runtimes

Подробно

ИНТЕРНЕТ ПРОГРАМИРАНЕ - JAVA JAVA ОБЕКТИ Ненко Табаков Пламен Танов Технологическо училище Електронни системи Технически университет София 9 октомври

ИНТЕРНЕТ ПРОГРАМИРАНЕ - JAVA JAVA ОБЕКТИ Ненко Табаков Пламен Танов Технологическо училище Електронни системи Технически университет София 9 октомври JAVA ОБЕКТИ Ненко Табаков Пламен Танов Технологическо училище Електронни системи Технически университет София 9 октомври 2008 JAVA ОБЕКТИ Забележка: Тази лекция е адаптация на лекция от курса: 6.092 Java

Подробно

Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София

Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.3 16 ноември 2004 г. Пример:

Подробно

Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Re

Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Re Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.1 27 февруари 2005 г. 1 #include < cstdio

Подробно

Microsoft Word - Primer3_1.doc

Microsoft Word - Primer3_1.doc 3.1.) Създаване на нов проект demultiplexor и нов файл demultiplexor.vhd в текстовия редактор Galaxy Стартирайте текстовия редактор Galaxy, използвайки опциите : Start > Programs > WARP > Galaxy 3.1.1.

Подробно

Виртуални функции

Виртуални функции Виртуални функции Статично свързване Как компилаторът избира кой метод или коя функция да бъде извикана? Прави се сравнение между формални и фактически параметри и се избира най-точното съвпадение в случай,

Подробно

Scan Tailor Кратко ръководство за работа Преди време описах как се работи с програмата Scan Kromsator. Сега искам да Ви представя една друга програма,

Scan Tailor Кратко ръководство за работа Преди време описах как се работи с програмата Scan Kromsator. Сега искам да Ви представя една друга програма, Scan Tailor Кратко ръководство за работа Преди време описах как се работи с програмата Scan Kromsator. Сега искам да Ви представя една друга програма, която набира популярност сред любителите на електронните

Подробно

ЕВРОПЕЙСКИ СЪЮЗ Европейки фонд за регионално развитие Инвестираме във вашето бъдеще ОПЕРАТИВНА ПРОГРАМА Развитие на конкурентоспособността на българск

ЕВРОПЕЙСКИ СЪЮЗ Европейки фонд за регионално развитие Инвестираме във вашето бъдеще ОПЕРАТИВНА ПРОГРАМА Развитие на конкурентоспособността на българск BG161PO003-1.1.06-0022-C0001 Ръководство за работа със системата Този документ е създаден с финансовата подкрепа на Оперативна програма на българската икономика 2007-2013, съфинансирана от Европейския

Подробно

Системи за управление на версии - Работа с git

Системи за управление на версии - Работа с git Системи за управление на версии Работа с git Иван Георгиев, Христо Иванов, Христо Стефанов Tехнологическо училище "Електронни системи", Технически университет, София 28 февруари 2019 г. И. Георгиев, Х.

Подробно

Microsoft Word - 12-Teacher_Getting Loopy BGG.docx

Microsoft Word - 12-Teacher_Getting Loopy BGG.docx СЪЗДАВАНЕ НА ЦИКЛИ Времетраене на урока: 30 минути. Основната продължителност на урока включва само дейностите. Въвеждащите и обобщаващи предложения могат да се използват за задълбочаване на знанията,

Подробно

http://it.souprovadia.info 1. Какво е облак (Cloud) Най-общо: Технологии и услуги (софтуер, хардуер, масиви от данни), достъпни през интернет; Разполагаме с... Място, където може да се качват файлове,

Подробно

Сериализация Калин Георгиев 13 май 2016 г. Калин Георгиев Обектно ориентирано програмиране 13 май 2016 г. 1 / 23

Сериализация Калин Георгиев 13 май 2016 г. Калин Георгиев Обектно ориентирано програмиране 13 май 2016 г. 1 / 23 Калин Георгиев 13 май 2016 г. Калин Георгиев Обектно ориентирано програмиране 13 май 2016 г. 1 / 23 f «data; f» data; Калин Георгиев Обектно ориентирано програмиране 13 май 2016 г. 2 / 23 Първо изискване:

Подробно

2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнениет

2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнениет 2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнението представя кратко въведение в теорията на лексическия

Подробно

Black and White

Black and White Advanced C++ Memory Management Йордан Димитър Зайков Трендафилов Memory Management Effective C++ 2 nd ed: 3, 5, 7, 8, 9, 10 More Effective C++: 1, 3, 8 Exceptional C++: 35, 36 Какво всъщност прави new?

Подробно

Paint.net

Paint.net Paint.net Урок 1 запознаване с различни разширения и слоеве Какво е разширение на един файл? Както знаете, всеки един файл си има име и разширение. Как изгелжда това: Име Разширение Името е уникално за

Подробно

2. Наследяване в C++ Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 1 февруари 2007 г. 1 Наследяване 1 2

2. Наследяване в C++ Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 1 февруари 2007 г. 1 Наследяване 1 2 2. Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 lchorbadjiev@elsys-bg.org 1 февруари 2007 г. 1 Наследяване 1 2 2 3 Полиморфизъм 9 1. Наследяване Наследяване UML UML unified modeling

Подробно

Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София

Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.1 9 март 2005 г. template< class

Подробно

Допълнения в периода Версия Модул Документи Към Права на достъп до екземпляри документи е добавено право Изтриване на док

Допълнения в периода Версия Модул Документи Към Права на достъп до екземпляри документи е добавено право Изтриване на док Допълнения в периода 25.04.2019 28.05.2019 Версия 4.42.0 Модул Документи Към Права на достъп до екземпляри документи е добавено право Изтриване на документ. Новото право е с по-нисък приоритет от правото

Подробно

Десислава Цокова ЗАБАВНИ ОБУЧИТЕЛНИ ИГРИ С LEARNING APPS НЕОБХОДИМИ РЕСУРСИ Компютър, интернет за създаването и ползването им. Регис

Десислава Цокова ЗАБАВНИ ОБУЧИТЕЛНИ ИГРИ С LEARNING APPS НЕОБХОДИМИ РЕСУРСИ Компютър, интернет за създаването и ползването им. Регис Десислава Цокова dtsokova@pgaz.org ЗАБАВНИ ОБУЧИТЕЛНИ ИГРИ С LEARNING APPS НЕОБХОДИМИ РЕСУРСИ Компютър, интернет за създаването и ползването им. Регистрация. ВЪВЕДЕНИЕ LearningApps.org е Web сайт, подкрепящ

Подробно

ICS Natioanal

ICS Natioanal РЪКОВОДСТВО ЗА ВЪНШНИ ПОТРЕБИТЕЛИ Март 2019 г. История на промените Дата Версия Описание Автор 28.09.2018 1.0 Ръководство за потребителя ИО АД 07.03.2019 2.0 Ръководство за потребителя ИО АД СЪДЪРЖАНИЕ:

Подробно

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision :

Подробно

Указание за инсталиране на офлайн Модул за Интрастат оператора (МИО) версия за 2019 г. Последна актуализация на указанието: г. Препор

Указание за инсталиране на офлайн Модул за Интрастат оператора (МИО) версия за 2019 г. Последна актуализация на указанието: г. Препор Указание за инсталиране на офлайн Модул за Интрастат оператора (МИО) версия 6.0.0 за 2019 г. Последна актуализация на указанието: 01.02.2019 г. Препоръка: Да се извърши от системен администратор! Изисквания

Подробно

Title of Presentation

Title of Presentation INDESIGN УРОК 1 ЗАПОЗНАВАНЕ С ПРОГРАМАТА Изготвил: инж. Дарина Атанасова, ркк при ІV ЕГ Начален екран. Нов документ. Първоначални настройки на документ. Промяна на мерните единици. Промяна на настройките

Подробно

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА СРЕДИ ЗА ПРОГРАМИРАНЕ ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА Същност на програмното осигуряване За да могат компютрите да разбират описаните на езика за програмиране алгоритми, те трябва да бъдат преведени

Подробно

Lush Green

Lush Green Конструктори Жизнен цикъл на обект За обекта се заделя памет и се свързва с неговото име Извиква се подходящ конструктор на обекта... (достъп до компоненти на обект, изпълняване на операции) Достига се

Подробно

ОПЕРАЦИОННАТА СИСТЕМА MS WINDOWS 10 Според някои в операционната система Windows 10 Microsoft събират найдобрите черти от версии 7 и 8. Тя е доста по-

ОПЕРАЦИОННАТА СИСТЕМА MS WINDOWS 10 Според някои в операционната система Windows 10 Microsoft събират найдобрите черти от версии 7 и 8. Тя е доста по- ОПЕРАЦИОННАТА СИСТЕМА MS WINDOWS 10 Според някои в операционната система Windows 10 Microsoft събират найдобрите черти от версии 7 и 8. Тя е доста по-гъвкава от всичко, което Microsoft са правили досега.

Подробно

X-Social_Varchev_

X-Social_Varchev_ XSocial ИНСТРУКЦИИ ЗА ПОЛЗВАНЕ www.varchev.com 0700 17 600 info@varchev.com Съдържание: 1. Какво е XSocial? 2. Копиране на сделки 3. Структурата на платформата xsocial 3.1. Списък Провайдъри 3.2. Настроение

Подробно

Допълнения в периода Версия Модул УПТО Във връзка с промените в Наредба Н-18 е разработен специализиран модул за Управлен

Допълнения в периода Версия Модул УПТО Във връзка с промените в Наредба Н-18 е разработен специализиран модул за Управлен Допълнения в периода 29.05.2019 15.07.2019 Версия 4.43.0 Модул УПТО Във връзка с промените в Наредба Н-18 е разработен специализиран модул за Управление на Продажбите в Търговски Обекти (УПТО) към СКИПТЪР(i).

Подробно

“ Ада – софт “ – софтуер за автоматизиране на финансово – счет

“ Ада – софт  “ – софтуер за автоматизиране на финансово – счет Офис София ж.к. Младост 1, бл.27 тел.: (02) 974 43 50 (02) 974 37 39 e-mail: office@ada-soft.bg РАЗРАБОТКА, ПРОДАЖБА И ВНЕДРЯВАНЕ НА ИКОНОМИЧЕСКИ СОФТУЕР. ОДИТ РЪКОВОДСТВО ЗА РАБОТА ISO 9001:2008 от Bureau

Подробно

WEB портал за съобщаване на проблеми в СО Район Банкя Ръководство на потребителя I. Общ изглед на портала, вход и регистриране на потребител След отва

WEB портал за съобщаване на проблеми в СО Район Банкя Ръководство на потребителя I. Общ изглед на портала, вход и регистриране на потребител След отва WEB портал за съобщаване на проблеми в СО Район Банкя Ръководство на потребителя I. Общ изглед на портала, вход и регистриране на потребител След отварянето на линка на портала http://bt.bg73.net/ се визуализира

Подробно

МОДУЛ 2 ВАРИАНТ НА ПРАКТИЧЕСКА ЗАДАЧА ЗА НАЦИОНАЛНО ОНЛАЙН ОЦЕНЯВАНЕ НА ДИГИТАЛНИ КОМПЕТЕНТНОСТИ X КЛАС от 2016 г. УСЛОВИЕ НА ЗАДАЧАТА За тази задача

МОДУЛ 2 ВАРИАНТ НА ПРАКТИЧЕСКА ЗАДАЧА ЗА НАЦИОНАЛНО ОНЛАЙН ОЦЕНЯВАНЕ НА ДИГИТАЛНИ КОМПЕТЕНТНОСТИ X КЛАС от 2016 г. УСЛОВИЕ НА ЗАДАЧАТА За тази задача МОДУЛ 2 ВАРИАНТ НА ПРАКТИЧЕСКА ЗАДАЧА ЗА НАЦИОНАЛНО ОНЛАЙН ОЦЕНЯВАНЕ НА ДИГИТАЛНИ КОМПЕТЕНТНОСТИ X КЛАС от 2016 г. УСЛОВИЕ НА ЗАДАЧАТА За тази задача са предоставени данни във файл Climate.xls, който ще

Подробно

Регистрация на профил в Google и работа с облака Google Drive (Google Диск) I. Създаване на Google акаунт Първо зареждате или

Регистрация на профил в Google и работа с облака Google Drive (Google Диск) I. Създаване на Google акаунт Първо зареждате   или Регистрация на профил в Google и работа с облака Google Drive (Google Диск) I. Създаване на Google акаунт Първо зареждате www.google.com или www.google.bg. Няма значение кой адрес ще напишете. Най-вероятно

Подробно

CSRF on JSON data

CSRF on JSON data Cross-Site Request Forgery (CSRF) on JavaScript Object Notation (JSON) data Garo Garabedyan, TU-Sofia CSRF Cross-Site Request Forgery (CSRF) е широко използвана уязвимост на уеб страниците. В тази атака

Подробно

Инструкция за работа с Декларации 1 и 6 Инструкция за изготвяне на Декларация образец 1 и Декларация образец 6 в ПП Омекс 2000, съгласно изискванията

Инструкция за работа с Декларации 1 и 6 Инструкция за изготвяне на Декларация образец 1 и Декларация образец 6 в ПП Омекс 2000, съгласно изискванията Инструкция за работа с Декларации 1 и 6 Инструкция за изготвяне на Декларация образец 1 и Декларация образец 6 в ПП Омекс 2000, съгласно изискванията на НАП от 01.01.2014 г. за едновременно подаване на

Подробно

Използване на Гугъл Диск

Използване на Гугъл Диск Използване на Гугъл Диск Основни действия, създаване на папки, документи и таблици Какво е Гугъл Диск (или Google Drive)? Google Drive е виртуален облак за съхранение, който може да използвате, за да пренасяте

Подробно

УКАЗАНИЯ ЗА РОДИТЕЛИТЕ Изберете Детски градини или Яслени групи в детски градини Изберете меню Регистрация Попълнете входните данни за родител/настойн

УКАЗАНИЯ ЗА РОДИТЕЛИТЕ Изберете Детски градини или Яслени групи в детски градини Изберете меню Регистрация Попълнете входните данни за родител/настойн УКАЗАНИЯ ЗА РОДИТЕЛИТЕ Изберете Детски градини или Яслени групи в детски градини Изберете меню Регистрация Попълнете входните данни за родител/настойник на детето: Всички полета, отбелязани със звездичка,

Подробно