Hello world! Welcome to Andrei Tupits / Õpimapp / Portfoolio Sites. This is your first post. Edit or delete it, then start writing!
Google scripts 1.Изначальный код ---------------------------------- function myFunction10() { // https://developers.google.com/apps-script/reference/mail/mail-app // Отправляем простое письмо MailApp.sendEmail({ to: 'mymail@gmail.com', // Email получателя письма subject: 'Тема письма', body: "Line 1\r\nLine 2\r\nLine 3", // Содержимое письма }); // Отправляем письмо с прикрепленным файлом // 1bPpy2Mm7sAffcZwSvuxOooPfrhfEWuE2 - ID Pdf файла, хранящегося на гугл диске var pdfFileBlob = DriveApp.getFileById( '1bPpy2Mm7sAffcZwSvuxOooPfrhfEWuE2' ).getBlob(); MailApp.sendEmail({ to: 'mymail@gmail.com', // Email получателя письма subject: 'Тема письма 2', body: "Line 1\r\nLine 2\r\nLine 3", // Содержимое письма // Прикрепляем файл attachments: [pdfFileBlob] }); } Мой код ------------------------------------ function myFunction() { let ss = SpreadsheetApp.getActiveSpreadsheet(); //активация таблицы let sheet = ss.getSheetByName('Лист1'); // нахождение нудной таблицы по названию let dataRange = sheet.getRange(2,1,4,3).getValues(); // нахождение диапазона ячеек(2 строка, 1 столбец, 4 кол-во строк, 3 кол-во столбцов) for(let i = 0; i < dataRange.length; i++){ // с помощью цикла происходит отправка писем, заканчивается на 4 (длина срок) let mail = dataRange[i][0]; let ru = dataRange[i][1]; let en = dataRange[i][2]; MailApp.sendEmail(mail, ru, en, "Hello"); // Отправляем письмо внутри цикла }; // 1bPpy2Mm7sAffcZwSvuxOooPfrhfEWuE2 - ID Pdf файла, хранящегося на гугл диске var pdfFileBlob = DriveApp.getFileById( '18JhxnP1XHskmcSkjKXlGljAlKdrsVPGvuOUTxvHwVtI' ).getBlob(); MailApp.sendEmail({ to: 'andrei.tupitsin@gmail.com', // Email получателя письма subject: 'Тема письма 2', body: "Line 1\r\nLine 2\r\nLine 3", // Содержимое письма // Прикрепляем файл attachments: [pdfFileBlob] }); }2.Исходный код ------------------------------- // Функция onOpen() запускается автоматически при открытии документа // https://developers.google.com/apps-script/guides/triggers/#onopen function onOpen() { // Создаём новое меню // https://developers.google.com/apps-script/reference/base/ui#createmenucaption SpreadsheetApp.getUi() .createMenu('Custom Menu') .addItem('Show alert', 'showAlert') .addItem('Show prompt', 'showPrompt') .addToUi(); } function showAlert() { var ui = SpreadsheetApp.getUi(); // https://developers.google.com/apps-script/reference/base/ui#alerttitle-prompt-buttons var result = ui.alert( 'Подтвердите действие', // Заголовок окна 'Вы уверены, что хотите продолжить?', // Сообщение ui.ButtonSet.YES_NO // Кнопки ); if (result == ui.Button.YES) { // Пользователь нажал на "Да" // User clicked "Yes". ui.alert('Подтверждение получено.'); } else { // Пользователь нажал на "Нет" или на X (закрыл окно) ui.alert('В разрешении отказано.'); } } function showPrompt() { var ui = SpreadsheetApp.getUi(); // https://developers.google.com/apps-script/reference/base/ui#prompttitle-prompt-buttons var result = ui.prompt( 'Сообщите что-нибудь о себе!', // Заголовок 'Введите своё имя:', // Сообщение ui.ButtonSet.OK_CANCEL // Кнопки ); var button = result.getSelectedButton(); // Кнопка, на которую нажал пользователь var text = result.getResponseText(); // Текст, который ввёл пользователь if (button == ui.Button.OK) { ui.alert('Ваше имя: ' + text + '.'); } else if (button == ui.Button.CANCEL) { ui.alert('Вы отказались вводить своё имя.'); } else if (button == ui.Button.CLOSE) { ui.alert('Вы закрыли окно.'); } } Мой код --------------------------------- // Функция onOpen() запускается автоматически при открытии документа // https://developers.google.com/apps-script/guides/triggers/#onopen function onOpen() { // Создаём новое меню // https://developers.google.com/apps-script/reference/base/ui#createmenucaption SpreadsheetApp.getUi() .createMenu('Custom Menu') .addItem('Show alert', 'showAlert') .addItem('Show prompt', 'showPrompt') .addItem('Show prompt2', 'showPrompt2') .addToUi(); } function showAlert() { var ui = SpreadsheetApp.getUi(); // https://developers.google.com/apps-script/reference/base/ui#alerttitle-prompt-buttons var result = ui.alert( 'Подтвердите действие', // Заголовок окна 'Вы уверены, что хотите продолжить?', // Сообщение ui.ButtonSet.YES_NO // Кнопки ); if (result == ui.Button.YES) { // Пользователь нажал на "Да" // User clicked "Yes". ui.alert('Подтверждение получено.'); } else { // Пользователь нажал на "Нет" или на X (закрыл окно) ui.alert('В разрешении отказано.'); } } function showPrompt() { var ui = SpreadsheetApp.getUi(); // https://developers.google.com/apps-script/reference/base/ui#prompttitle-prompt-buttons var result = ui.prompt( 'Сообщите что-нибудь о себе!', // Заголовок 'Введите своё имя:', // Сообщение ui.ButtonSet.OK_CANCEL // Кнопки ); var button = result.getSelectedButton(); // Кнопка, на которую нажал пользователь var text = result.getResponseText(); // Текст, который ввёл пользователь if (button == ui.Button.OK) { ui.alert('Ваше имя: ' + text + '.'); } else if (button == ui.Button.CANCEL) { ui.alert('Вы отказались вводить своё имя.'); } else if (button == ui.Button.CLOSE) { ui.alert('Вы закрыли окно.'); } } function showPrompt2() { var ui = SpreadsheetApp.getUi(); // https://developers.google.com/apps-script/reference/base/ui#prompttitle-prompt-buttons var result = ui.prompt( 'Сколько вам лет', // Заголовок 'Возраст:', // Сообщение ui.ButtonSet.OK_CANCEL // Кнопки ); var button = result.getSelectedButton(); // Кнопка, на которую нажал пользователь var text = result.getResponseText(); // Текст, который ввёл пользователь if (button == ui.Button.OK) { ui.alert('Возраст: ' + text + '.'); } else if (button == ui.Button.CANCEL) { ui.alert('Отказ.'); } else if (button == ui.Button.CLOSE) { ui.alert('Вы закрыли окно.'); } }
Andmebaasisüsteemide alused SQL statementsDDL – Data Definition Language (CREATE TABLE, ALTER TABLE)DML -Data Manipulation Language (INSERT INTO, DELETE FROM, UPDATE)——————————————————————————————Piirangud — ОграниченияPrimary key — значение столбца уникальноForeign key — столбец использует значение из связаной таблицыNOT NULL — не пустое значениеUNIQUE — не повторяющее значениеCHECK — выбор некоторых значений——————————————————————————————Типы данныхSQL относится к категории языков с сильной типизацией. Это означает, что с любым объектом данных, связывается определенный тип, даже если на первый взгляд это и не очевидно. Тип данных одновременно определяет и ограничивает разновидности операций, которые могут выполняться с этими данными.SQL поддерживает несколько типов данных, которые можно разделить на три категории: символьные (строковые) типы данных, числовые типы данных и типы данных для хранения даты и времени.Символьные (строковые) типыCHAR(n) или CHARACTER(n) – Текст фиксированной дилны (по умолчанию длиной 1, максимум – 255 знаков); CHARACTER VARYING(n) или CHAR VARYING(n) – текст переменной длины, max длина — n знаков;Числовые типыЧисловые типы используются для представления целых и вещественных значений. С общей точки зрения к числовым типам SQL относятся следующие типы:2-, 4- и 8-байтовые целые числа;SMALLINT, INT2 (-32768…32767) в MS SQL также tinyint (0 до 255) INTEGER, INT, INT4 (от -2 147 483 648 до 2 147 483 647) BIGINT, INT8 (от -9 223 372 036 854 775 807 до 9 223 372 036 854 775 807) 4- и 8-байтовые вещественные числа;REAL, FLOAT4 (шесть значащих цифр, неограниченный размер с ограниченной точностью) DOUBLE PRECISION, FLOAT8, FLOAT (15 значащих цифр, неограниченный размер с ограниченной точностью) дробные числа с фиксированной точностьюNUMERIC(p,s), DECIMAL (p,s) — целые и вещественные числа из р цифр (всего) и s цифр в дробной части тип MONEY – хранение информации денежного типа; обеспечивает точность значений до 4 знаков после запятой и занимает 8 байт.Логические и двоичные типыBOOLEAN, BOOL — Отдельная логическая величина (TRUE или FALSE). BIT — позволяет хранить один бит, который принимает значения 0, 1 или NULL. Строковые значения TRUE и FALSE можно преобразовать в значения типа bit: TRUE преобразуется в 1, а FALSE – в 0.Тип даты и времениDATE – тип данных для хранения даты; TIME — тип данных для хранения времени; INTERVAL — тип данных для хранения временного интервала; DATETIME — тип данных для хранения моментов времени (год + месяц + день + часы + минуты + секунды + доли секунд).Типы данных MS Access SQLTEXT(n) – текст переменной длины, max длина — n знаков; MEMO – текст, по объему превышающий 255 символов BYTE, INTEGER, LONG – целые числа COUNTER – счетчик, целые числа SINGLE DOUBLE CURRENCY – вещественные числа DATETIME — дата и время YESNO – Логический тип LONGBINARY – OleObject, двоичный тип——————————————————————————————SQL lausedDDL — DATA DEFINITION (CREATE TABLE ,ALTER TABLE)DML — DATA MANIPULATION LANGUAGE(INSERT INTO, DELETE FROM,UPDATE, ETC)——————————————————————————————Table creation (DDL)CREATE TABLE toode( toodeID int primary key AUTO_INCREMENT, toodeNimetus varchar(50), toodeHind decimal(5, 2), v_kuupaev date, kas_olemas bit );Adding data to the table (DML)INSERT INTO toode(toodeNimetus, toodeHind, kas_olemas, v_kuupaev) VALUES ('piim Alma', 1.50, 1, '2024-01-31'); SELECT * FROM toode;INSERT INTO toode(toodeNimetus, toodeHind, kas_olemas, v_kuupaev) VALUES ('piim Alma', 1.50, 1, '2024-01-31'); SELECT * FROM toode;CREATE TABLE `ANDREIBAS`.`tellimus` (`tellimusID` INT NOT NULL AUTO_INCREMENT , `tellimuseKuupaev` DATE NOT NULL , `toodeID` INT NOT NULL , `klient` VARCHAR(50) NOT NULL , PRIMARY KEY (`tellimusID`)) ENGINE = InnoDB; CREATE table Product( idProduct int primary key AUTO_INCREMENT, ProductName varchar(50), idCategory int, Price decimal(6, 2), FOREIGN key(idCategory) REFERENCES category(idCategory) ); create table customer( idCustomer int PRIMARY KEY AUTO_INCREMENT, nameCustomer varchar(100) UNIQUE, contactCustomer varchar(50) );insert into product(ProductName, idCategory, Price) VALUES ('boots', 3, 100.99) insert into Sale(idProduct, Count_, DateOfSale) values(1,200,'2024-01-31'),(3,200,'2024-01-31'),(4,100,'2024-01-31'),(3,250,'2024-01-31'),(3,57,'2024-01-31'); insert into customer(nameCustomer, contactCustomer) values('Marko', 55614815');ALTER TABLE sale ADD units char(5); alter table sale add FOREIGN KEY(idCustomer) REFERENCES customer(idCustomer) update sale set idCustomer=1;SELECT QUERY --Страны, названия которых начинаются на букву “К” (5 записей); SELECT * FROM country WHERE NAME LIKE 'K%'; --Страны, получившие независимость в 19-м веке (27 записей) SELECT Name, IndepYear from country WHERE IndepYear BETWEEN 1800 AND 1899; --Страны ближнего востока (Middle East) (18 записей) SELECT Name,Region FROM country WHERE region like 'Middle East%'; --Европейские страны, которые образовались в 19 веке (7 записей) SELECT Name, IndepYear, Continent from country Where(IndepYear BETWEEN 1800 and 1899) and Continent like'Europe%'; --Страны, в названиях которых содержат слог “ра” (9 записей) SELECT Name from country where Name like '%pa%'; --Страны, названия которых начинаются на гласную букву (A, E, I, O, U, Y) (42 записи); --RLIKE '^[A, E, I, O, U, Y]' - ПРИНАДЛЕЖНОСТЬ К МНОЖЕСТВУ. SELECT Name from country WHERE Name like'A%' OR NAME lIKE 'E%' OR NAME lIKE 'I%' OR NAME lIKE 'O%'OR NAME lIKE 'U%'OR NAME lIKE 'Y%'; SELECT Name from country WHERE Name RLIKE '^[A, E, I, O, U, Y]'; --Страны, названия которых начинаются и заканчиваются на одну и ту же букву. (20 записей) SELECT Name FROM country WHERE LEFT(Name,1) like RIGHT(Name,1); --Государства, формой правления которых является различной формы монархия (43 записи) SELECT name FROM country where GovernmentForm like '%Monarchy%'; --Страны, население которых меньше 1 млн. (85 записей) SELECT Name from country WHERE Population < 1000000; --Самое древнее государство (China) SELECT Name, IndepYear from country ORDER BY IndepYear LIMIT 1; --Страны, год обретения независимости которыми не определен (47 записей) SELECT Name FROM country WHERE IndepYear = 0; --Самое маленькое по площади государство (Holy See (Vatican City State)) SELECT Name,SurfaceArea FROM country ORDER BY SurfaceArea LIMIT 1; --Первую десятку наиболее населенных государств мира SELECT Name,Population FROM country ORDER BY Population DESC LIMIT 10; --Первую десятку наиболее населенных государств Европы SELECT Name,Population FROM country WHERE Continent LIKE '%Europe%' ORDER BY Population DESC LIMIT 10; --Cуммарное число жителей стран Европы и суммарную площадь её государств (730 074 600, 23 049 133.9) SELECT SUM(Population) AS 'Kokku elanike_arv', SUM(SurfaceArea) AS 'Kokku pindala' FROM country WHERE Continent LIKE '%Europe%'; --Число стран, расположенных не в Антарктике (234 записи) SELECT COUNT(Name) FROM country WHERE Continent NOT like '%Antarctica%'; --Число стран, где главой правительства является Елизавета II (Elisabeth II), суммарное число жителей этих стран. (35 стран, 122 872 550 человек) SELECT SUM(Population), COUNT(*) FROM country WHERE HeadOfState like 'Elisabeth II'; --Число стран, наибольшее и наименьшее число жителей стран Полинезии (Polynesia) (10 стран, 235 000 человек, 50 человек) SELECT COUNT(*) as RiikideArv, MIN(Population) as MIN, MAX(Population) as MAX FROM country WHERE Region LIKE 'Polynesia'; SQL CRIB SHEET—————————————————————————————————————
Multimeedia AdobePhotoshop — проходил курсы (20 уроков — по 20 мин) элементарного пользования AdobePhotoshop. Работа со слоями, с выравниванием цвета, редактирование фото и т.д.Хотел бы расширить свои знания в изучении AdobePhotoshop.
Tagasiside [googleapps domain=»docs» dir=»forms/d/e/1FAIpQLSd1r6GdnzXthevdxkfXpsVcdYsUdZHo-6E_nThkr2dibxi00A/viewform» query=»embedded=true» width=»640″ height=»502″ /]