# ultimasolution.pl > not only programming projects in backend life --- ## Pages - [Privacy Policy](https://ultimasolution.pl/privacy-policy/): Who we are Suggested text: Our website address is: https://ultimasolution. pl. Comments Suggested text: When visitors leave comments on the... - [Terms and Conditions](https://ultimasolution.pl/terms-and-conditions/) - [Cookie Policy (EU)](https://ultimasolution.pl/cookie-policy-eu/): - [Login Customizer](https://ultimasolution.pl/login-customizer/): This page is used for Login Customizer plugin. It will not be visible to your readers. Do not delete it. - [404 Error, content does not exist anymore](https://ultimasolution.pl/404-error-page/): metaseo_404_page - [About blog](https://ultimasolution.pl/about/): This blog explores key topics and challenges from my programming journey, with a focus on building database applications and interfaces.... - [Projects](https://ultimasolution.pl/projects/) - [Programming Journey](https://ultimasolution.pl/): About This pages covers relevant projects and issues related to this programming journey. I focus here to topic build database... --- ## Posts - [Restricting SSH Authentication to the Local Network Using Match in OpenSSH (Ubuntu)](https://ultimasolution.pl/restricting-ssh-authentication-to-the-local-network-using-match-in-openssh/): Starting with OpenSSH 6. 5, the Match keyword in sshd_config allows more flexible and simpler SSH configuration. For example, you... - [Ubuntu dark mode](https://ultimasolution.pl/ubuntu-dark-mode/): Here's a clearer and more polished version of your text: Solution for Ubuntu 24. 04 LTS: Enabling Dark Mode via... - [Angular proxy](https://ultimasolution.pl/angular-proxy/): The proxy. conf. json file in an Angular project enables API request forwarding during development, helping to bypass CORS issues... - [Eslint](https://ultimasolution.pl/eslint/): Configure and use eslint 9 bnBtIGluaXQgQGVzbGludC9jb25maWdAbGF0ZXN0CiMgb3IsIGlmIHlvdSBhcmVhZHkgaW5zdGFsbGVkIEVTTGludApucHggZXNsaW50IC0taW5pdA== - [Verify type parameters call in Oracle procedure](https://ultimasolution.pl/verify-type-parameters-call-in-oracle-procedure/): create or replace procedure e_name 2 ( 3 p_ids in varchar2, 4 p_name in varchar2, 5 p_csr out sys_refcursor 6... - [Alternative Quoting Mechanism (''Q'') for String Literals](https://ultimasolution.pl/alternative-quoting-mechanism-q-for-string-literals/): In PL/SQL, handling long text with single quotes can be tricky. Oracle provides the q mechanism for easier string literal... - [Add axis in three.js](https://ultimasolution.pl/add-axis-in-tree-js/): The addAxis method in Three. js adds a visual representation of the 3D coordinate axes (X, Y, Z) to the... - [Promises and Observable](https://ultimasolution.pl/promises-and-observable/): Promises and Observable - [Migration to EsLint v9](https://ultimasolution.pl/migration-to-eslint-v9/): The ESLint Configuration Migrator is a new tool that helps transition to ESLint v9 by converting various . eslintrc. *... - [WordPress website and store design](https://ultimasolution.pl/wordpress-website-and-store-design/): Why it matters. Websites and online stores age (technologically and aesthetically) very quickly. Every six months or so, new developments... - [3d-inventory-mongo-api](https://ultimasolution.pl/3d-inventory-mongo-api/): How create an API for a 3D inventory application using the MEAN stack (MongoDB, Express, Angular, Node. js) with some... - [Blog](https://ultimasolution.pl/blog/) - [How to wake Ubuntu from sleep with wireless mouse/keyboard](https://ultimasolution.pl/how-to-wake-ubuntu-from-sleep-with-wireless-mouse-keyboard/): How to wake Ubuntu from sleep with wireless mouse/keyboard? When your laptop is closed, and you want to start the... - [3d-inventory-angular-ui](https://ultimasolution.pl/3d-inventory-angular-ui/): The 3D Inventory project is a solution designed to create a spatial and database representation of datacenters. It serves as... - [Projekt strony fortepianootwock.pl](https://ultimasolution.pl/projekt-strony-fortepianootwock-pl/): Projekt i utworzenie profili społecznościowych fortepiaonootwock. pl fortepiaonootwock. pl - [SQL Fiddle engines](https://ultimasolution.pl/sql-fiddle-engines/): A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that... - [How to make Yixing Teapot](https://ultimasolution.pl/how-to-make-yixing-teapot/): This is compilation materials form internet to do handmade Yixing Teapot with clay some similar to Purple Clay Zisha. - [SQL partition by date keeping weekly and sub partition](https://ultimasolution.pl/sql-partition-by-date-keeping-weekly-and-sub-partition/): Partition by date keeping weekly and sub partition by station name alphabetically for huge records in separate sub partition. PARTITION... - [Show duplicates in internal table in ABAP](https://ultimasolution.pl/show-duplicates-in-internal-table/): Show duplicates in internal table in ABAP. This approach ensures that duplicates are detected and stored in a separate internal... - [Projekt strony Gwiazdobranie i Dawanie (2021)](https://ultimasolution.pl/projekt-strony-gwiazdobranie-i-dawanie-2021/): Projekt i konfiguracja strony gwiazdobranie. pl 2022-2023 https://www. ultimasolution. pl/wp-content/uploads/2021/11/Screenshot-2023-02-04-at-07-28-43-Gwiazdobranie-i-Dawanie. png - [Refresh ALV GRID and keep position and current cell - ABAP](https://ultimasolution.pl/refresh-alv-grid-and-keep-position-and-current-cell-abap/): When using the CL_GUI_ALV_GRID in edit mode or after changing the internal table, refreshing the grid with refresh_table_display may cause... - [When use Clear, Refresh or Delete in ABAP variable?](https://ultimasolution.pl/when-use-clear-refresh-or-delete-in-abap-variable/): In ABAP, memory management is handled through various commands: FREE: This command deallocates the memory assigned to a variable, making... - [Create an SAPUI5 Application Project via proxy OData in node base development](https://ultimasolution.pl/create-an-sapui5-application-project-via-proxy-odata/): Node. js-Based Development Environment in VS Code Setup Download Node. js from http://nodejs. org and install it. Install VSC https://code.... - [SAP GUI 7.70 and theme Quartz and Quartz Dark](https://ultimasolution.pl/sap-gui-7-70-and-dark-theme/): SAP GUI 7. 70 introduces the "Quartz" and "Quartz Dark" themes, offering a modern look and integration with the Fiori... - [Changes rhgrenz4 example report to CUT and insert info-types 1000, 1001 and 1002](https://ultimasolution.pl/rhgrenz4-to-cut-infotypes/): Changes rhgrenz4 example report to CUT and insert info-types 1000, 1001 and 1002 - [SAP ABAP count lines in internal table with where condition](https://ultimasolution.pl/sap-abap-count-lines-in-internal-table/): In SAP ABAP, counting lines in an internal table with a condition can be done using the REDUCE expression starting... - [Internal Table with and Without Header](https://ultimasolution.pl/internal-table-with-and-without-header/): What is a Work Area ? Work areas are single rows of data. They should have the same format as... - [Find files fast and without "permission denied" warning](https://ultimasolution.pl/find-file-without-permission-denied/): How to find file in Linux (Ubuntu) system (clean way)? FILE_NAME – name of looking of file $ find .... - [Timestamp display in ALV](https://ultimasolution.pl/timestamp-display-in-alv/): The provided text contains information and code related to working with timestamps and formatting them for display in an ALV... - [Open SQL - test query](https://ultimasolution.pl/open-sql-test-query/): To test Open SQL query use transation DB02 -> Performance -> Additional functions -> SQL Command Editor Give the query.... - [List of HR functions](https://ultimasolution.pl/list-of-hr-functions/): List of HR functions List of some Important Function Modules used in HR. BAPI_EMPLCOMM_CREATE: Maitain SAP HR communication infotype 0105... - [Docker error use of closed network connection](https://ultimasolution.pl/docker-error/): Problem with large docker. I try to install ABAP with docker according installing-sap-nw-abap-into-docker/. $ docker build -t nwabap:7. 52 .... - [SAP ABAP update infotype 1000](https://ultimasolution.pl/sap-abap-update-infotype-1000/): The provided text outlines a series of actions related to HR infotype data management in an ABAP (Advanced Business Application... - [GET TIME STAMP option in your ABAP program.](https://ultimasolution.pl/get-time-stamp-option-in-your-abap-program/): TABLES: ztable " Database table DATA: wa TYPE ztable, dbtab TYPE TABLE OF ztable. GET TIME STAMP FIELD wa-timestamp. "... - [SALV programming](https://ultimasolution.pl/salv-programming/): *&---------------------------------------------------------------------* *& Report ZVK_CL_SALV *&---------------------------------------------------------------------* *&Report using OOPs with Basic functionalities. *&---------------------------------------------------------------------* REPORT zvk_cl_salv_1. TABLES : vbak. TYPE-POOLS : abap,rsanm.... - [SAP ABAP ALV: LVC_FIELDCATALOG_MERGE how to use?](https://ultimasolution.pl/lvc_fieldcatalog_merge-how-to-use/): Understanding Field Catalog in ALV (ABAP List Viewer) In ABAP, the field catalog is a key element when working with... - [ALV color](https://ultimasolution.pl/alv-color/): *&---------------------------------------------------------------------* *& This code snippet will show how to use the CL_SALV_TABLE to *& generate the ALV and COLORs for... - [Relationships (Infotype 1001)](https://ultimasolution.pl/relationships-infotype-1001/): Relationships (Infotype 1001) Definition Assignments between objects. Use If, when processing organizational data, you have defined assignments between objects, the... - [Programming SAP ABAP HR MO infotypes 1000 & 1001](https://ultimasolution.pl/programming-sap-abap-hr-mo-infotypes-1000-1001/): The provided text covers various aspects of SAP HR (Human Resources) and HR programming. It includes information related to infotypes,... - [Project automatic test and integration for Oracle PLSQL development](https://ultimasolution.pl/integracja-ci-di-dla-plsql-oracle/): The database structure is initially dumped to a file, committed to Git as text files, and populated with test data... - [Omnit "Permission denied" in find](https://ultimasolution.pl/omnit-permission-denied-in-find/): find / -name art 2>&1 | grep -v "Permission denied" - [10 way to print array in Java](https://ultimasolution.pl/10-way-to-print-array-in-java/): package ultima; import com. fasterxml. jackson. databind. ObjectMapper; import com. fasterxml. jackson. databind. ObjectWriter; import com. google. gson. Gson; import... - [Enter in AWS](https://ultimasolution.pl/aws/): Install local curl "https://awscli. amazonaws. com/awscli-exe-linux-x86_64. zip" -o "awscliv2. zip" unzip awscliv2. zip sudo . /aws/install aws --version Running the... - [How to youtube-dl](https://ultimasolution.pl/how-to-youtube-dl/): INSTALLATION To install it right away for all UNIX users (Linux, macOS, etc. ), type: sudo curl -L https://yt-dl. org/downloads/latest/youtube-dl... - [peaperhorses.pl](https://ultimasolution.pl/peaperhorses-pl/) - [Java Strategy Design Patterns](https://ultimasolution.pl/java-strategy-design-patterns/): Strategy is a behavioural design pattern that turns a set of behaviours into objects and makes them interchangeable inside original... - [Spring Boot Rest](https://ultimasolution.pl/spring-boot-rest/): Stack Simple REST backend service. Spring Boot Unit Test 4/5 Mockito HSQL -> MYSQL Task Client can apply for loan... - [Event Handling in Spring](https://ultimasolution.pl/event-handling-in-spring/): Spring’s event handling is single-threaded so if an event is published, until and unless all the receivers get the message,... - [BigDecimal class in Java](https://ultimasolution.pl/bigdecimal-class-in-java/): java. math → Class BigDecimal java. lang. Object java. lang. Number java. math. BigDecimal All Implemented Interfaces: Serializable, Comparable The... - [Traveling on paths that have heart](https://ultimasolution.pl/traveling-on-paths-that-have-heart/): “For me there is only the traveling on paths that have heart, on any path that may have heart, and... - [FILO stack in Java](https://ultimasolution.pl/filo-stack-in-java/): Example implementation FILO stack in Java. Implement a stack (i. e. a First-In-Last-Out queue) with an additional `min` operation that... - [Blockchain in Java](https://ultimasolution.pl/blockchain-in-java/): This class implements a basic blockchain in Java, incorporating fundamental blockchain concepts such as block validation, transactions, and wallet management. - [List of List in Java](https://ultimasolution.pl/list-of-list-in-java/): The Java List interface, java. util. List, represents an ordered sequence of objects. The elements contained in a Java List... - [Casting type in Java - Type safety: Unchecked cast from Object to Hashtable](https://ultimasolution.pl/casting-type-in-java-type-safety-unchecked-cast-from-object-to-hashtable/): Problem How resolve warning: Type safety: Unchecked cast from Object to Hashtable. Type safety: Unchecked cast from Object to Hashtable... - [Materialized Views: REFRESH FAST Categories](https://ultimasolution.pl/materialized-views-refresh-fast-categories/): Materialized Views REFRESH FAST Categories There are three ways to categorize a materialized view’s ability to be fast refreshed. It... - [How do you embed album art into an MP3 using Python? ](https://ultimasolution.pl/how-do-you-embed-album-art-into-an-mp3-using-python/): https://stackoverflow. com/a/1937425/2390255 - [Alonefold](https://ultimasolution.pl/alonefold/): Alonefold is the musical project of Australian artist and composer Scott Ashton Beardow. His works blend a mixture of experimental... - [LOG ERRORS Oralce's DML](https://ultimasolution.pl/log-errors-oralces-dml/): This PL/SQL block dynamically creates and populates a table based on a SELECT statement, while using Oracle's DBMS_ERRLOG package to... - [Oracle SQL: Update a table with data from another table](https://ultimasolution.pl/oracle-sql-update-a-table-with-data-from-another-table/): Highly active question. You have enough reputation to answer this question. The reputation requirement helps protect this question from spam... - [How to Show Progress Bar for Linux Commands](https://ultimasolution.pl/how-to-show-progress-bar-for-linux-commands/): Very useful information for ppl uses lot of script works in Linux enviroment. Many Linux commands like `dd`, `cp`, `rsync`,... - [Projektowanie stron i sklepów WordPress](https://ultimasolution.pl/projektowanie-stron-i-sklepow-wordpress/): Dlaczego? Strony i sklepy internetowe starzeją się (technologicznie i estetycznie) bardzo szybko. Mniej więcej co pół roku pojawiają się nowe... - [DB-Engines Ranking - popularity ranking of database management systems](https://ultimasolution.pl/db-engines-ranking-popularity-ranking-of-database-management-systems/): The DB-Engines Ranking ranks database management systems according to their popularity. The ranking is updated monthly. Read more about the... - [No New New: Raw Pointers Removed from C++](https://ultimasolution.pl/no-new-new-raw-pointers-removed-from-c/): Two weeks ago, the ISO C++ standard meeting took place in Jacksonville. Today I want to make a short detour... - [How you spend your morning determines your success in life](https://ultimasolution.pl/how-you-spend-your-morning-determines-your-success-in-life/): I didn’t understand how important my morning was at the beginning of my mission. But it quickly became very apparent.... - [Budda nie był masochistą](https://ultimasolution.pl/budda-nie-byl-masochista/): Mandżuśri, figlarny uczeń Siddharthy, poddał próbę mnicha medytującego nad brzydotą, przemieniając się w piękną nimfę. Mnich, choć długo opierał się... - [How to Import from Excel to a New Oracle Table with SQL Developer | ThatJeffSmith](https://ultimasolution.pl/how-to-import-from-excel-to-a-new-oracle-table-with-sql-developer-thatjeffsmith/): How to Import from Excel to a New Oracle Table with SQL Developer Source: How to Import from Excel to... - [js-stack-from-scratch/README.md at master · verekia/js-stack-from-scratch · GitHub](https://ultimasolution.pl/js-stack-from-scratchreadme-md-at-master-%c2%b7-verekiajs-stack-from-scratch-%c2%b7-github/): Welcome to my modern JavaScript stack tutorial: JavaScript Stack from Scratch. This is the V2 of the tutorial, major changes... - [Dla zwykłego człowieka śmierć jest czymś realnym i może przyjść w każdej chwili...](https://ultimasolution.pl/dla-zwyklego-czlowieka-smierc-jest-czyms-realnym-i-moze-przyjsc-w-kazdej-chwili/): Dla zwykłego człowieka śmierć jest czymś realnym i może przyjść w każdej chwili, bez ostrzeżenia. Marnowanie swego cennego ludzkiego życia... - [SQL Conversion national characters to ASCII without spaces](https://ultimasolution.pl/sql-conversion-national-characters-to-ascii-without-spaces/): Conversion national characters to ASCII with out spaces in Oracle 11g+ SELECT REPLACE( CONVERT(LOCATION_CITY_PL, 'US7ASCII'), ' ', '' ), '-',... - [SQL owa_util.get_procedure and $$PLSQL_UNIT](https://ultimasolution.pl/sql-owa_util-get_procedure-and-plsql_unit/): In 10g and 11g I use the “owa_util. get_procedure” function. I normally use this in packages as it will also... - [How use LAG Oracle analytic function](https://ultimasolution.pl/oracle-sql-lag-oracle-11g-is-analytic-function/): Oracle 11g introduces the LAG function, a powerful analytic tool that allows you to access data from previous rows without... - [Python rename special characters in filename](https://ultimasolution.pl/python-rename-special-characters-in-filename/): Problem When upload files to One Drive i have problem with files contain special characters. Below you found Python... - [PL/SQL Errors: ORA-04061: existing state of package has been invalidated](https://ultimasolution.pl/plsql-errors-ora-04061-existing-state-of-package-has-been-invalidated/): PL/SQL Errors: ORA-04061: existing state of package has been invalidated. If so, that's because your package is stateful: The values... - [PLSQL NOT_DATA_FOUND and CURSORS](https://ultimasolution.pl/plsql-not_data_found-and-cursors/): In PL/SQL, one common problem developers encounter is determining whether a specific record exists in another table. There are various... - [SQL – Search for a particular string in Oracle CLOB column](https://ultimasolution.pl/sql-search-for-a-particular-string-in-oracle-clob-column/): Clobs Not many tables demand the use of CLOBs (Character Large Objects). CLOB data type columns can store up to... - [Remove duplicated number in column](https://ultimasolution.pl/sql-corner-remove-duplicated-number/): Problem Last time I have a problem with duplicated number in post address (column). Our callback interfaces write to us... - [Oracle 10gR2+ conditional PL/SQL Compilation](https://ultimasolution.pl/oracle-10gr2-conditional-plsql-compilation/): Oracle Database 10g Release 2 delivers a new PL/SQL language feature: conditional compilation. The feature is elegant and easy to... - [Java ciąg Fibonacciego](https://ultimasolution.pl/java-ciag-fibonacciego/): Zadanie Utwórz rekurencyjna metode obliczajaca ciag Fibonacciego, zdefiniowany dla elementu fibonacci(n) jako sume fibonacci(n-1) + fibonacci(n-2) przy załozeniu, ze fibonacci(1)... - [PLSQL loop inexed by letters](https://ultimasolution.pl/plsql-loop-inexed-by-letters/): Loop indexed by letters In this code: k_ascii_a is a constant set to the ASCII value of ‘A’. The CHR... - [What are the best programming fonts?](https://ultimasolution.pl/what-are-the-best-programming-fonts/): The choice the font in Firefox or Sulbimetext it is always hard decision... . As much as choice of a... - [RegEx never ending story....](https://ultimasolution.pl/regex-never-ending-story/): It is example of use RegEx to prepare SQL data for SELECT/UPDATE operation. - [SQL corner: 7 kind of SQL Joins. Including : INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN](https://ultimasolution.pl/sql-corner-7-kind-of-sql-joins-including-inner-join-left-join-right-join-full-join/): Infographic of the 7 kind of SQL Joins. Including : INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, with or... - [Java - Suma kolejnych liczb całkowitych od 5 do 1000](https://ultimasolution.pl/java-suma-kolejnych-liczb-calkowitych-od-5-do-1000/): Zadanie 1. Suma kolejnych liczb całkowitych od 5 do 1000 Sumowanie – operacja dodawania ciągu liczb, której wynikiem jest suma.... - [Unique session ID](https://ultimasolution.pl/unique-session-id/): The UNIQUE_SESSION_ID function returns a character string unique to the session among all sessions currently connected to the database. The... - [Programowanie współbieżne C na Linux - przykłady](https://ultimasolution.pl/programowanie-wspolbiezne-c-na-linux-przyklady/): Przykładowe zadania z programowania współbieżnego na systemie Linux Napisz program, który pokazuje, które atrybuty procesu macierzystego są dziedziczone przez proces... - [Narzędzia to projektowania baz danych](https://ultimasolution.pl/narzedzia-to-projektowania-baz-danych/): GNU-GPL OpenSystemArchitect http://www. codebydesign. com/ Power*Architect http://code. google. com/p/power-architect/ Druid http://druid. sourceforge. net/ ERW http://erw. dsi. unimi. it/ Dia http://live.... - [Cellular automaton (CA) in C](https://ultimasolution.pl/automat-komorkowy-w-c-cellular-automaton-ca-in-c/): Cellular automata and Moore neighborhood Cellular automaton ( CA ) is by definition a periodic grid of cells, where in... - [Interfaces and functional interface in Java - tutorial](https://ultimasolution.pl/interfaces-and-functional-interface-in-java-tutorial/): This simple sumarize informationa about interfances and funcional interfnces in Java. Interfances An interface is a reference type in Java.... - [Java - przykład z konstruktorami](https://ultimasolution.pl/java-przyklad-z-konstruktorami/): Przykład na dedykowany konstruktor Zadeklaruj klasę Sloik zawierającą pole Dzem dzem, dedykowany konstruktor inicjujący wszystkie zadeklarowane pola i metody: otworz... - [Oracle PL/SQL: Bulk Processing with BULK COLLECT and FORALL](https://ultimasolution.pl/oracle-plsql-bulk-processing-with-bulk-collect-and-forall/): Bulk Processing techniques in Oracle PL/SQL can significantly improve the performance of SQL operations by minimizing context switches between the... - [Change Color Scheme For Gnome Terminal, Vim, Gedit](https://ultimasolution.pl/change-color-scheme-for-gnome-terminal-vim-gedit/): Solarized: A Must Have Color Scheme For Gnome Terminal, Vim, Gedit And Lots More ~ Ubuntu / Linux blog Additional... - [Conversion mp4 to mp3 in linux](https://ultimasolution.pl/conversion-mp4-to-mp3-in-linux/): A simple script to convert mp4 to mp3 on Linux. There are two official ways of installing FFmpeg on Ubuntu:... - [Projekt pfirma.com.pl](https://ultimasolution.pl/projekt-pfirma-com-pl/): Strona biura tłumaczeń przysięgłych "Porządna Firma": http://pfirma. com. pl Tłumaczenia przysięgłe język angielski. Dobra jakość przy dobrej cenie. Terminowa... - [Projekt asokamission.in](https://ultimasolution.pl/projekt-asokamission-in/): asokamission. in Projekt zabezpieczenia serwisu przed spamem. Problem rozwiązań instalując i konfigurując dodatkowe modułu Drupal: 1. CAPTACHA w celu zabezpieczenia... - [Projekty fundacji nyatri.org](https://ultimasolution.pl/projekty-fundacji-nyatri-org/): Celem Fundacji jest organizacja wszechstronnej działalności w zakresie pomocy uchodźcom tybetańskim, ochrony zdrowia oraz ratowania życia, w tym wspierania i... - [How to write SAP ABAP web service and consume it in PHP](https://ultimasolution.pl/how-to-write-sap-abap-web-service-and-consume-it-in-php/): Last time i spend lot of time to develop SAP ES webservices connected to PHP. Why PHP? Because PHP was... --- # # Detailed Content ## Pages - Published: 2024-07-01 - Modified: 2024-07-01 - URL: https://ultimasolution.pl/privacy-policy/ Who we are Suggested text: Our website address is: https://ultimasolution. pl. Comments Suggested text: When visitors leave comments on the site we collect the data shown in the comments form, and also the visitor’s IP address and browser user agent string to help spam detection. An anonymized string created from your email address (also called a hash) may be provided to the Gravatar service to see if you are using it. The Gravatar service privacy policy is available here: https://automattic. com/privacy/. After approval of your comment, your profile picture is visible to the public in the context of your comment. Media Suggested text: If you upload images to the website, you should avoid uploading images with embedded location data (EXIF GPS) included. Visitors to the website can download and extract any location data from images on the website. Cookies Suggested text: If you leave a comment on our site you may opt-in to saving your name, email address and website in cookies. These are for your convenience so that you do not have to fill in your details again when you leave another comment. These cookies will last for one year. If you visit our login page, we will set a temporary cookie to determine if your browser accepts cookies. This cookie contains no personal data and is discarded when you close your browser. When you log in, we will also set up several cookies to save your login information and your screen display choices. Login cookies last for two... --- - Published: 2024-02-26 - Modified: 2024-09-07 - URL: https://ultimasolution.pl/cookie-policy-eu/   --- - Published: 2018-08-06 - Modified: 2018-08-06 - URL: https://ultimasolution.pl/login-customizer/ This page is used for Login Customizer plugin. It will not be visible to your readers. Do not delete it. --- - Published: 2017-12-17 - Modified: 2022-07-21 - URL: https://ultimasolution.pl/404-error-page/ metaseo_404_page Search for: --- - Published: 2016-01-27 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/about/ This blog explores key topics and challenges from my programming journey, with a focus on building database applications and interfaces. I invite you to collaborate with code and share your thoughts in the comments. --- - Published: 2016-01-27 - Modified: 2023-10-29 - URL: https://ultimasolution.pl/projects/ Gallery WordPress website and store design portfoilio, wordpress WordPress website and store designKarol Preiskorn2024-09-29T18:14:03+02:00November 5th, 2023|Categories: portfoilio, wordpress|Tags: ci, class, grid, html, linux, project, webpage, wordpress| Gallery 3d-inventory-mongo-api 3d-inventory, linux, mongo, portfoilio, recent 3d-inventory-mongo-apiKarol Preiskorn2025-08-26T08:59:41+02:00October 29th, 2023|Categories: 3d-inventory, linux, mongo, portfoilio, recent|Tags: api, mongo, nodejs| 3d-inventory-angular-ui Gallery 3d-inventory-angular-ui 3d-inventory, docker, js, mongo, portfoilio, recent 3d-inventory-angular-uiKarol Preiskorn2025-03-09T19:55:56+01:00February 18th, 2023|Categories: 3d-inventory, docker, js, mongo, portfoilio, recent|Tags: 3d, angular, inventory, mongo, oracle, podman, project| Gallery How to make Yixing Teapot portfoilio, pottery How to make Yixing TeapotKarol Preiskorn2023-11-02T21:37:50+01:00May 19th, 2022|Categories: portfoilio, pottery|Tags: clay, tea, teapot, zisha| Gallery Programming SAP ABAP HR MO infotypes 1000 & 1001 abap, portfoilio Programming SAP ABAP HR MO infotypes 1000 & 1001Karol Preiskorn2024-09-08T16:16:38+02:00July 12th, 2020|Categories: abap, portfoilio|Tags: abap, hr, infotype, infotypes, om, open sql, sap| Gallery Spring Boot Rest java, portfoilio Spring Boot RestKarol Preiskorn2020-08-29T20:34:00+02:00February 10th, 2020|Categories: java, portfoilio|Tags: api| Gallery Blockchain in Java java, portfoilio Blockchain in JavaKarol Preiskorn2024-09-08T15:44:50+02:00November 11th, 2019|Categories: java, portfoilio|Tags: blockchain, java, wallet| Gallery Projektowanie stron i sklepów WordPress portfoilio, wordpress Projektowanie stron i sklepów WordPressKarol Preiskorn2025-03-09T20:10:31+01:00September 15th, 2018|Categories: portfoilio, wordpress|Tags: ci, class, grid, html, linux, project, webpage, wordpress| --- - Published: 2016-01-27 - Modified: 2025-10-14 - URL: https://ultimasolution.pl/ About This pages covers relevant projects and issues related to this programming journey. I focus here to topic build database applications and interfaces. Main project is about a simple solution that allows you to build a spatial and database representation of all types of warehouses and server rooms. You are welcome to cooperate and leave a few words of comment. 3d-inventory project 3d-inventory-angular-ui3d-inventory / docker / js / mongo / portfoilio / recent 3d-inventory-mongo-api3d-inventory / linux / mongo / portfoilio / recent Promises and Observable3d-inventory / js / typescript --- --- ## Posts - Published: 2025-05-02 - Modified: 2025-05-02 - URL: https://ultimasolution.pl/restricting-ssh-authentication-to-the-local-network-using-match-in-openssh/ - Categories: linux, tool - Tags: config, devops, LinuxSecurity, NetworkSecurity, ssh, ubuntuTips Starting with OpenSSH 6.5, the Match keyword in sshd_config allows more flexible and simpler SSH configuration. For example, you can disable all authentication methods by default and selectively enable them for specific IP ranges (e.g., a local network like 192.168.1.*). You can also restrict access to certain users. It’s best practice to place these custom rules in separate files under /etc/ssh/sshd_config.d/ to avoid conflicts during package updates. 1. Disable All SSH Authentication Globally Edit your SSH daemon config file: sudo nano /etc/ssh/sshd_config Add the following lines to disable all authentication by default: PasswordAuthentication no PubkeyAuthentication no 2. Allow Authentication for the Local Network At the end of the same file, or in a separate config file (recommended), add: Match Address 192. 168. 1. * PubkeyAuthentication yes AllowUsers yourusername Replace 192. 168. 1. * with your local subnet and yourusername with your actual username. 3. (Recommended) Use a Separate Config File Create a separate file to keep your config safe during upgrades: sudo nano /etc/ssh/sshd_config. d/local_network_only. conf Add the same block: Match Address 192. 168. 1. * PubkeyAuthentication yes AllowUsers yourusername Then restart SSH: sudo systemctl restart ssh Notes You can also match on user, group, or host using Match User, Match Group, etc. Use man sshd_config to explore more options and syntax. This method enhances security by only allowing SSH from trusted IP ranges. --- - Published: 2025-05-01 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/ubuntu-dark-mode/ - Categories: linux, tool - Tags: 24.04, dark, dark theme, theme, ubuntu Here's a clearer and more polished version of your text: Solution for Ubuntu 24. 04 LTS: Enabling Dark Mode via Environment Variable If you're experiencing theme issues on Ubuntu 24. 04 LTS, you can resolve it by editing the /etc/environment file: Open the file in a text editor with root privileges: sudo nano /etc/environment Add the following line at the end of the file: ADW_DEBUG_COLOR_SCHEME=prefer-dark Save the changes and reboot your system. Note: This tweak affects how GNOME's libadwaita handles your application's appearance. libadwaita is responsible for enforcing UI styling, including theme preferences. --- - Published: 2025-04-27 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/angular-proxy/ - Categories: 3d-inventory - Tags: angular, cors, proxy The proxy.conf.json file in an Angular project enables API request forwarding during development, helping to bypass CORS issues when the frontend (e.g., http://localhost:4200) communicates with a backend on a different port (e.g., http://localhost:8080). The provided proxy. conf. json file is a configuration file used in Angular projects to set up a proxy for API requests during development. This is particularly useful when your Angular application runs on a development server (e. g. , `http://localhost:4200`) and needs to communicate with a backend server running on a different domain or port (e. g. , `http://localhost:8080`). Without a proxy, such cross-origin requests would typically be blocked by the browser due to the **Same-Origin Policy**. ### Key Elements of the Configuration: 1. **`"/api"`**: This is the context or path that the proxy will intercept. Any HTTP request from the Angular application that starts with `/api` will be redirected to the backend server specified in the `target` property. For example, a request to `http://localhost:4200/api/users` will be proxied to `http://localhost:8080/api/users`. 2. **`"target": "http://localhost:8080"`**: This specifies the backend server to which the requests should be forwarded. In this case, the proxy will redirect requests to `http://localhost:8080`. 3. **`"secure": false`**: This indicates whether the proxy should validate the SSL certificate of the target server. Setting it to `false` is useful during development when working with self-signed or invalid certificates. For production, this should typically be set to `true` to ensure secure communication. ### How It Works: When you run your Angular application using the Angular CLI (`ng serve`), the development server reads the proxy. conf. json file (if configured in angular. json) and sets up the proxy. This allows your frontend to make API calls to `/api` without worrying about cross-origin... --- - Published: 2024-12-08 - Modified: 2024-12-08 - URL: https://ultimasolution.pl/eslint/ - Categories: js, tool, typescript - Tags: eslint Configure and use eslint 9 Copy to ClipboardSyntax Highlighternpm init @eslint/config@latest # or, if you aready installed ESLint npx eslint --init --- - Published: 2024-11-01 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/verify-type-parameters-call-in-oracle-procedure/ - Categories: plsql, sql create or replace procedure e_name 2 ( 3 p_ids in varchar2, 4 p_name in varchar2, 5 p_csr out sys_refcursor 6 ) as 7 begin 8 open p_csr for 9 select object_name, owner, object_type 10 from all_objects 11 where object_name = upper(p_name) 12 and owner = upper(p_ids); 13 end; 14 / --- - Published: 2024-09-16 - Modified: 2024-09-16 - URL: https://ultimasolution.pl/alternative-quoting-mechanism-q-for-string-literals/ - Categories: plsql, sql - Tags: oracle, plsql, string In PL/SQL, handling long text with single quotes can be tricky. Oracle provides the q[] mechanism for easier string literal management. By using custom delimiters, you can avoid escaping single quotes. All know that is sth. Problem with long text in PL/SQL. It is good to start use q' where "" represents the ending delimiter. Oracle automatically recognizes "paired" delimiters, such as , {}, , and . If you want to use some other character as your start delimiter and it doesn't have a "natural" partner for termination, you must use the same character for start and end delimiters. Finally, if you choose a character for a delimiter and it appears in your string immediately before a single quotation mark, Oracle will be unhappy and raise an error. BEGIN DBMS_OUTPUT. put_line ('That''s a really funny ''joke''. '); END; BEGIN DBMS_OUTPUT. PUT_LINE ( q''); END; Links livesql. oracle. com --- - Published: 2024-08-23 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/add-axis-in-tree-js/ - Categories: 3d-inventory, js, typescript - Tags: 3d, three.js The addAxis() method in Three.js adds a visual representation of the 3D coordinate axes (X, Y, Z) to the scene, along with corresponding labels to help users identify the orientation of the space. The `addAxis` method adds a visual representation of the 3D coordinate axes to the scene, along with corresponding labels ("X", "Y", "Z") placed at the ends of each axis. This helps users easily identify the orientation of the 3D space. Three. js addAxis Method Description The addAxis method is responsible for adding a visual representation of the coordinate axes (X, Y, Z) to a 3D scene using Three. js. Here's a breakdown of the method: 1. Adding the Axes Helper The method begins by creating an instance of THREE. AxesHelper with a size of 35 units. This helper is a built-in utility in Three. js that visually represents the three coordinate axes: X-axis (usually red) Y-axis (usually green) Z-axis (usually blue) The axesHelper is then added to the scene using this. scene. add(axesHelper). 2. Loading the Font The method loads a font using the FontLoader from Three. js. The font file is located in the specified path and is loaded asynchronously. Once the font is loaded, a callback function is triggered to create text labels for the axes. 3. Creating Text Labels Within the callback function, a text material is created using THREE. MeshBasicMaterial with a white color (0xffffff). A helper function, createTextMesh, is defined to generate 3D text meshes: Text Geometry: The function takes in a text string and a position vector. It creates a 3D text geometry using the loaded font, with a size of 4 units and a depth of 1 unit. Text Mesh: A mesh is... --- - Published: 2024-08-16 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/promises-and-observable/ - Categories: 3d-inventory, js, typescript - Tags: js, observable, promises Promises and Observable When I started using Angular, first may problem with https://stackblitz. com/edit/2arg42? embed=1&file=index. ts --- - Published: 2024-08-15 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/migration-to-eslint-v9/ - Categories: js, linux, tool, typescript - Tags: eslint, files, js The ESLint Configuration Migrator is a new tool that helps transition to ESLint v9 by converting various .eslintrc.* files into the new eslint.config.js format, supporting JSON, YAML, JS, and CJS files. It also integrates .eslintignore patterns and applies compatibility utilities as needed. The migrator can be used directly through command-line tools like npx or yarn, and by default, generates an eslint.config.mjs file, with an option to output a CommonJS file using the --commonjs flag. Are you ready for the new version, ESLint v9? That’s why we’re excited to announce the release of the `ESLint Configuration Migrator`. This utility is designed to translate: `eslintrc. *` files into `eslint. config. js` files, including: 1-for-1 migration of `. eslintrc`, `. eslintrc. json`, . eslintrc. yml, and . eslintrc. yaml files. Reasonable migration of simple: `. eslintrc. js`, . eslintrc. cjs, and . eslintrc. mjs files. (These will often need edits if you are using variables to build your config). Automatic inclusion of `. eslintignore` patterns into your new config file. Automatic use of `FlatCompat` when necessary. Automatic use of the compatibility utilities when necessary. You can use the configuration migrator directly from `npm` without installing it via npx or similar commands. Pass the location of the . eslintrc. * file to convert, like this: npx @eslint/migrate-config . eslintrc. json yarn dlx @eslint/migrate-config . eslintrc. json pnpm dlx @eslint/migrate-config. eslintrc. json bunx @eslint/migrate-config . eslintrc. json By default, this command will output a eslint. config. mjs file. If you’d like to output a CommonJS file instead, add the --commonjs flag: npx @eslint/migrate-config . eslintrc. json --commonjs yarn dlx @eslint/migrate-config . eslintrc. json --commonjs pnpm dlx @eslint/migrate-config . eslintrc. json --commonjs bunx @eslint/migrate-config . eslintrc. json --commonjs Link https://eslint. org/docs/latest/use/configure/migration-guide --- - Published: 2023-11-05 - Modified: 2024-09-29 - URL: https://ultimasolution.pl/wordpress-website-and-store-design/ - Categories: portfoilio, wordpress - Tags: ci, class, grid, html, linux, project, webpage, wordpress Why it matters. Websites and online stores age (technologically and aesthetically) very quickly. Every six months or so, new developments come out, definitely improving their speed, efficiency and functionality. Do you sometimes wonder if it would be worthwhile to improve something on your website or your store, or, to build it/it completely from scratch? Perhaps the maintenance costs of the current solution are too high? Is it possible that there is a lack of integration with other applications? How to make the process of granting or selling useful? You have come to the right place! I'm in the business of creating or rebuilding websites on WordPress. I provide page design and help with implementation in content management. In the price of the project I include instruction and help with the standard problems that arise when working with WordPress. Call or write - I will prepare a free quote for you. I'll explain how it works, then suggest the optimal solution for your business. What is the process of creating a website like and how much does it cost? The price of creating a WordPress-based website consists of several parts listed below: Domain price Domain price depends on the name on average it is ~100 PLN/year according to https://hosting. linux. pl/domeny-cennik. html. Hosting Hosting cost ~100 PLN/year according to https://hosting. linux. pl/index. html Purchase of plug-ins When building a new site or rebuilding an old one, I recommend buying one of the best templates for WordPress at a one-time cost of... --- - Published: 2023-10-29 - Modified: 2025-08-26 - URL: https://ultimasolution.pl/3d-inventory-mongo-api/ - Categories: 3d-inventory, linux, mongo, portfoilio, recent - Tags: api, mongo, nodejs How create an API for a 3D inventory application using the MEAN stack (MongoDB, Express, Angular, Node.js) with some additional libraries and tools. Here's a step-by-step guide on how to set up your project 3d-inventory-mongo-api 3d-inventory-mongo-api Purposes Architecture Features MEAN stack Data Model API documentation Getting Started License About Backend API for the 3D-Inventory platform — a modern inventory management system that combines spatial visualization with structured inventory data. This Node. js-based API uses MongoDB as its primary database and serves inventory data to a frontend interface built in 3d-inventory. Features RESTful API for managing inventory elements, racks, rooms, and objects MongoDB schema designed for spatial and visual representation of inventory items Modular structure using Express. js Secure API endpoints with basic validation Designed to support 3D spatial UI representation in real-time MEAN stack MongoDB is a NoSQL database that stores data in JSON format. Express. js is a web application framework for Node. js that simplifies the process of building web servers and APIs. RxJs - Reactive Extensions Library for JavaScript. NodeJS is a JavaScript runtime that allows you to run code on the server-side. API Endpoints Swagger API definition. Endpoint Method Description /devices GET Get all devices /devices POST Create a new device /devices/ GET Get device by ID /devices/ PUT Update device by ID /devices/ DELETE Delete device by ID /models GET Get all models /models POST Create a new model /models/ GET Get model by ID /models/ PUT Update model by ID /models/ DELETE Delete model by ID /connections GET Get all connections /connections POST Create a new connection /connections/ GET Get connection by ID /connections/ PUT Update connection by ID /connections/ DELETE Delete connection by ID /logs GET Get... --- - Published: 2023-10-29 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/blog/ - Categories: No Category Gallery Restricting SSH Authentication to the Local Network Using Match in OpenSSH (Ubuntu) linux, tool Restricting SSH Authentication to the Local Network Using Match in OpenSSH (Ubuntu)Karol Preiskorn2025-05-02T14:08:03+02:00May 2nd, 2025|Categories: linux, tool|Tags: config, devops, LinuxSecurity, NetworkSecurity, ssh, ubuntuTips| Gallery Remove duplicated number in column sql Remove duplicated number in columnKarol Preiskorn2025-05-01T20:08:56+02:00September 1st, 2017|Categories: sql|Tags: data, find, html, oracle, regex, sql| Gallery Conversion mp4 to mp3 in linux linux Conversion mp4 to mp3 in linuxKarol Preiskorn2025-05-01T20:04:56+02:00June 11th, 2015|Categories: linux|Tags: bash, linux, mp3| Gallery Oracle SQL: Update a table with data from another table sql Oracle SQL: Update a table with data from another tableKarol Preiskorn2025-05-01T19:03:07+02:00November 14th, 2018|Categories: sql|Tags: oracle, sql| Gallery SQL Conversion national characters to ASCII without spaces sql SQL Conversion national characters to ASCII without spacesKarol Preiskorn2025-05-01T18:17:57+02:00December 11th, 2017|Categories: sql|Tags: plsql, replace, sql| Gallery LOG ERRORS Oralce’s DML sql LOG ERRORS Oralce’s DMLKarol Preiskorn2025-05-01T18:10:05+02:00November 14th, 2018|Categories: sql|Tags: error, log, oracle, sql| Gallery Unique session ID sql Unique session IDKarol Preiskorn2025-05-01T18:05:57+02:00February 4th, 2016|Categories: sql|Tags: oracle, plsql, sql| Gallery Verify type parameters call in Oracle procedure plsql, sql Verify type parameters call in Oracle procedureKarol Preiskorn2025-05-01T18:04:09+02:00November 1st, 2024|Categories: plsql, sql| Gallery Ubuntu dark mode linux, tool Ubuntu dark modeKarol Preiskorn2025-05-01T18:02:13+02:00May 1st, 2025|Categories: linux, tool|Tags: 24. 04, dark, dark theme, theme, ubuntu| Gallery Eslint js, tool, typescript EslintKarol Preiskorn2024-12-08T15:44:12+01:00December 8th, 2024|Categories: js, tool, typescript|Tags: eslint| Gallery Create an SAPUI5 Application Project via proxy OData in node base development abap, js Create an SAPUI5 Application Project via proxy OData in node base developmentKarol... --- - Published: 2023-05-07 - Modified: 2023-12-30 - URL: https://ultimasolution.pl/how-to-wake-ubuntu-from-sleep-with-wireless-mouse-keyboard/ - Categories: linux - Tags: example, find, linux How to wake Ubuntu from sleep with wireless mouse/keyboard? When your laptop is closed, and you want to start the work? First, enter the command lsusb. This will show you the names of your USB devices, like this: $ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3. 0 root hub Bus 001 Device 005: ID 0bda:5521 Realtek Semiconductor Corp. Integrated_Webcam_HD Bus 001 Device 004: ID 27c6:538d Shenzhen Goodix Technology Co. ,Ltd. FingerPrint Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 006: ID 0cf3:e009 Qualcomm Atheros Communications Bus 001 Device 002: ID 046d:c341 Logitech, Inc. Logitech Mechanical keyboard Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2. 0 root hub Find the name of the device you want to use to wake the computer (for example, Dell Computer Corp. Keyboard) and note the number next to Bus (example: Bus 001). Type: $ sudo vim /sys/bus/usb/devices/usb1/power/wakeup replacing the number in usb1 with the device's Bus number (without the 0's in front, e. g. Bus 001 > usb1). Change the word disabled to enabled and save the file. When you enter to directory: $ ls /sys/bus/usb/devices/usb1/1-1/power active_duration control runtime_enabled wakeup_abort_count wakeup_last_time_ms async level runtime_status wakeup_active wakeup_max_time_ms autosuspend persist runtime_suspended_time wakeup_active_count wakeup_total_time_ms autosuspend_delay_ms runtime_active_kids runtime_usage wakeup_count connected_duration runtime_active_time wakeup wakeup_expire_count --- - Published: 2023-02-18 - Modified: 2025-03-09 - URL: https://ultimasolution.pl/3d-inventory-angular-ui/ - Categories: 3d-inventory, docker, js, mongo, portfoilio, recent - Tags: 3d, angular, inventory, mongo, oracle, podman, project The 3D Inventory project is a solution designed to create a spatial and database representation of datacenters. It serves as a sandbox for experimenting with database systems, focusing on building a simple and efficient IT inventory platform. 3D inventory About project The 3d inventory project allows you to build a spatial and database representation of your datacenters. Motivation This project serves as a sandbox to explore relevant topics and issues related to creating a simple and efficient platform for IT inventory. Project contain three repos: https://github. com/karol-preiskorn/3d-inventory-angular-ui https://github. com/karol-preiskorn/3d-inventory-mongo-api https://github. com/karol-preiskorn/3d-inventory-oracle-api Technology stack Angular 17+ - as a Corp framework. Bootstrap 5. 3+ - logic for insert UI data tree. js 163+ - as best graph framework. MongoAtlas|Oracle - I want in this project try different solution and different data structure and storage datamodels relational and noSQL. REST - prepared API in use in Swagger. Podman --> Google Cloud as containers Demo A demo of the 3D Inventory showcases devices, models, and connections using Angular and Three. js for 3D visualizations. https://youtu. be/rNOxpZ0ti1Q Data Model This is implementation parametric generic attribute class. All attributes for Devices, Models and Connections are stored in this model. Parameters types are defined in Attribute Dictionary. In Attributes are stored values defined in Attributes Dictionary for Devices, Model and Connections. Attributes Dictionary Are defined for specifics parameters, these entities. Logical model Relational data model is mapped to a NoSQL model in MongoDB. Application List devices Models Attributes Attribute Dictionary Connections Run git clone https://github. com/karol-preiskorn/3d-inventory-angular-ui. git cd 3d-inventory-angular-ui npm install npm run start or run separately json-server and ui npm run start:json-server npm run start:ng Goto in browser http://localhost:4200 --- - Published: 2023-02-09 - Modified: 2024-01-09 - URL: https://ultimasolution.pl/projekt-strony-fortepianootwock-pl/ - Categories: wordpress - Tags: project, wordpress Projekt i utworzenie profili społecznościowych fortepiaonootwock. pl fortepiaonootwock. pl --- - Published: 2023-02-07 - Modified: 2023-11-18 - URL: https://ultimasolution.pl/sql-fiddle-engines/ - Categories: plsql, tool - Tags: oracle, sql A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that specifies a match pattern in text. Usually such patterns are used by string-searching algorithms for "find" or "find and replace" operations on strings, or for input validation. Regular expression techniques are developed in theoretical computer science and formal language theory. http://rextester. com/l/oracle_online_compiler http://dbfiddle. uk/ https://livesql. oracle. com/apex/livesql/file/index. html --- - Published: 2022-05-19 - Modified: 2023-11-02 - URL: https://ultimasolution.pl/how-to-make-yixing-teapot/ - Categories: portfoilio, pottery - Tags: clay, tea, teapot, zisha This is compilation materials form internet to do handmade Yixing Teapot with clay some similar to Purple Clay Zisha. About This is compilation materials form internet to do handmade Yixing Teapot with clay some similar to Purple Clay Zisha. I am fascinating qiyun this handmade piece of art. Chinese Teapots - Manufacture And Clay Unlike Western pottery-making techniques where “earth-clays” are turned on a wheel, the more rigid quality of Zisha clay enables the component parts of a teapot to be made in advance and then assembled piece by piece. There are 3 types of manufacture: Handmade Teapots shapes Half-handmade Moulded Handmade teapots are formed into shape by an artist who hand-cuts pieces and assembles them into shape using traditional tools such as wooden picks and paddles. In preparing Zisha the clay to make the various parts of a handmade teapot, it is folded many times, somewhat like in the manufacture of Japanese katana (samurai swords). This folding strengthens the clay and creates micro channels of air pockets in the clay which allows air to move in both directions through the teapot. This “dual-porosity” characteristic is thought to provide additional oxygen to the tea while brewing and as wine drinkers know, oxygen intensifies flavour. Half-handmade is the assembly of machine-moulded pieces by hand with traditional tools. Many good teapots using Zisha clay are made in this way. Moulded teapots are made by a mass-production process of assembling pre-moulded pieces by machine, such as the two halves of the teapot and lid and attaching a pre-moulded spout and handle. Even though moulded teapots are not as valuable as handmade or... --- - Published: 2022-03-05 - Modified: 2023-11-04 - URL: https://ultimasolution.pl/sql-partition-by-date-keeping-weekly-and-sub-partition/ - Categories: sql - Tags: oracle Partition by date keeping weekly and sub partition by station name alphabetically for huge records in separate sub partition. PARTITION BY RANGE (CREATED_DATE) INTERVAL (numtodsinterval(7, 'DAY')) SUBPARTITION BY RANGE(STATION) SUBPARTITION TEMPLATE ( SUBPARTITION SUB_PART_A VALUES LESS THAN ('B%'), SUBPARTITION SUB_PART_B VALUES LESS THAN ('C%'), SUBPARTITION SUB_PART_C VALUES LESS THAN ('D%'), SUBPARTITION SUB_PART_D VALUES LESS THAN ('E%'), SUBPARTITION SUB_PART_E VALUES LESS THAN ('F%'), SUBPARTITION SUB_PART_F VALUES LESS THAN ('G%'), SUBPARTITION SUB_PART_G VALUES LESS THAN ('H%'), SUBPARTITION SUB_PART_H VALUES LESS THAN ('I%'), SUBPARTITION SUB_PART_I VALUES LESS THAN ('J%'), SUBPARTITION SUB_PART_J VALUES LESS THAN ('K%'), SUBPARTITION SUB_PART_K VALUES LESS THAN ('L%'), SUBPARTITION SUB_PART_L VALUES LESS THAN ('M%'), SUBPARTITION SUB_PART_M VALUES LESS THAN ('N%'), SUBPARTITION SUB_PART_N VALUES LESS THAN ('O%'), SUBPARTITION SUB_PART_O VALUES LESS THAN ('P%'), SUBPARTITION SUB_PART_P VALUES LESS THAN ('Q%'), SUBPARTITION SUB_PART_Q VALUES LESS THAN ('R%'), SUBPARTITION SUB_PART_R VALUES LESS THAN ('S%'), SUBPARTITION SUB_PART_S VALUES LESS THAN ('T%'), SUBPARTITION SUB_PART_T VALUES LESS THAN ('U%'), SUBPARTITION SUB_PART_U VALUES LESS THAN ('V%'), SUBPARTITION SUB_PART_V VALUES LESS THAN ('W%'), SUBPARTITION SUB_PART_W VALUES LESS THAN ('X%'), SUBPARTITION SUB_PART_X VALUES LESS THAN ('Y%'), SUBPARTITION SUB_PART_Y VALUES LESS THAN ('Z%'), SUBPARTITION SUB_PART_Z_0_9 VALUES LESS THAN (MAXVALUE) ) ( PARTITION OLD_PART_DATA VALUES LESS THAN (TO_DATE('01-AUG-2018', 'dd-mon-yyyy')) ); --- - Published: 2022-01-22 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/show-duplicates-in-internal-table/ - Categories: abap - Tags: abap, internal table Show duplicates in internal table in ABAP. This approach ensures that duplicates are detected and stored in a separate internal table for further processing. To identify duplicates in an internal table in ABAP, you can use a combination of sorting and looping. Here's an example that shows how to find duplicate entries in an internal table: DATA: BEGIN OF itab OCCURS 0, field1 TYPE i, field2 TYPE c LENGTH 10, END OF itab, wa LIKE LINE OF itab. * Add sample data to internal table itab-field1 = 1. itab-field2 = 'A'. APPEND itab. itab-field1 = 2. itab-field2 = 'B'. APPEND itab. itab-field1 = 1. itab-field2 = 'A'. APPEND itab. itab-field1 = 3. itab-field2 = 'C'. APPEND itab. itab-field1 = 2. itab-field2 = 'B'. APPEND itab. * Sort internal table by the fields you want to check duplicates for SORT itab BY field1 field2. * Compare current record with In ABAP, you can use a simple logic to identify and show duplicates in an internal table. One common approach is to use SORT and DELETE ADJACENT DUPLICATES to flag or separate the duplicates. However, if you want to retain the duplicates for further processing or display, a different method using a loop can be used. Here's an example that shows how to find and display duplicates in an internal table: TYPES: BEGIN OF ty_data, id TYPE i, name TYPE string, END OF ty_data. DATA: lt_table TYPE TABLE OF ty_data, ls_table TYPE ty_data, lt_duplicates TYPE TABLE OF ty_data. " Populate the internal table with test data APPEND VALUE #( id = 1 name = 'John' ) TO lt_table. APPEND VALUE #( id = 2 name =... --- - Published: 2021-11-01 - Modified: 2023-02-04 - URL: https://ultimasolution.pl/projekt-strony-gwiazdobranie-i-dawanie-2021/ - Categories: wordpress - Tags: project, wordpress Projekt i konfiguracja strony gwiazdobranie. pl 2022-2023 --- - Published: 2021-06-09 - Modified: 2024-09-07 - URL: https://ultimasolution.pl/refresh-alv-grid-and-keep-position-and-current-cell-abap/ - Categories: abap - Tags: ALV, grid, sap When using the CL_GUI_ALV_GRID in edit mode or after changing the internal table, refreshing the grid with refresh_table_display may cause the cursor or scroll to reset, confusing the user. To avoid this, the following methods can help retain the scroll position and current cell: get_scroll_info_via_id: Retrieve current scroll info. get_current_cell: Get the current cell to retain cursor position. get_selected_rows / get_selected_cells_id: Capture selected rows/cells. refresh_table_display: Refresh the grid. set_selected_cells_id / set_selected_rows: Restore selected rows/cells. set_scroll_info_via_id: Restore scroll position. set_current_cell_via_id: Set the cursor back. CL_GUI_ALV_GRID When you use CL_GUI_ALV_GRID in edit mode, or you change your internal table used to display data on ALV grid it may happen that after refreshing the grid using refresh_table_display your cursor or scroll goes to the beginning of the grid. User feels little lost in such situation, but there is an easy solution for that. data: is_stable type lvc_s_stbl. is_stable-row = 'X'. is_stable-col = 'X'. "or is_stable = 'XX'. grid->refresh_table_display( exporting is_stable = is_stable " With Stable Rows/Columns * i_soft_refresh = i_soft_refresh " Without Sort, Filter, etc. exceptions finished = 1 others = 2 ). if sy-subrc 0. * message id sy-msgid type sy-msgty number sy-msgno * with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. endif. So to keep scroll position and current cell we will need to use following methods of CL_GUI_ALV_GRID: get_scroll_info_via_id- gets current scroll information get_current_cell - gets current cell, we will use that data to set the cursor at the end get_selected_rows - gets selected rows get_selected_cells_id - if we didn't select any rows, we check for the selected cell information >refresh_table_display - then simple refresh of grid set_selected_cells_id - after refresh it's time to set back all information, so set selected cell set_selected_rows - or set selected rows (depending on what we received at the beginning) set_scroll_info_via_id - set scroll position back set_current_cell_via_id - set cursor back. There is no special coding here, just standard ALV grid methods used in proper order. Method definition, Importing parameters: I_SOFT TYPE CHAR01 DEFAULT 'X' I_SET_CURRENT TYPE CHAR01 DEFAULT SPACE... --- - Published: 2021-06-08 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/when-use-clear-refresh-or-delete-in-abap-variable/ - Categories: abap - Tags: abap, clear In ABAP, memory management is handled through various commands: FREE: This command deallocates the memory assigned to a variable, making the memory available for other uses. After this, the variable is no longer usable in the current program. REFRESH: This is used for clearing all entries from an internal table while retaining the memory allocation, allowing the table to be reused within the same program. CLEAR: It empties the content of a variable without releasing the allocated memory, leaving it available for further use. DELETE: This command removes specific values from a table or variable based on a given condition. Then the compiler ABAP will allocate memory (With memory ID 433443) equal to size 1 character size. DATA : l_Variable(1) type c. l_Variable = 'X' Then if you assign a value for the above l_Variable the variable or memory ID 433443 contains this 'X' value. If you write: FREE Variable. The memory allocated is refreshed and freed. Means after this statement the memory to the variable is no more. It is freed from the program and can be used for some other program are purpose. REFRESH i_tab. Used for table to clear all the entries from the internal table body. but sill memory allocation exist and you can use some other with in the program. CLEAR variable it clears the memory of the variable i. e. variable will be empty. DELETE variable or I_tab index i etc. It deletes a specific value from a I_tab body based on condition. --- - Published: 2021-04-28 - Modified: 2024-10-06 - URL: https://ultimasolution.pl/create-an-sapui5-application-project-via-proxy-odata/ - Categories: abap, js - Tags: sapui5 Node. js-Based Development Environment in VS Code Setup Download Node. js from http://nodejs. org and install it. Install VSC https://code. visualstudio. com/download# Set the environment variables in the operating system settings or in the command line. You need to do this if you are working behind an HTTP proxy: @SET HTTP_PROXY=http://proxy:8080 @SET HTTPS_PROXY=http://proxy:8080 @SET FTP_PROXY=http://proxy:8080 @SET NO_PROXY=localhost,127. 0. 0. 1,. mycompany. corp Install the Grunt command line interface (grunt-cli) globally with the following command: npm install grunt-cli -g. Download and install Git from http://git-scm. com/download. Clone the Git repository with the following command git clone https://github. com/SAP/openui5. git. Install all npm dependencies locally. Execute the commands inside the openui5 directory as show below: cd openui5 npm install Start the server: with grunt serve. Note: grunt serve has various configuration options you can use. For example, you can specify the parameter --port=9090 to use a different HTTP port. Point your browser to the following server where SAPUI5 is running: http://localhost:8080/testsuite/ Testing SAPUI5 Test your development using ESLint or unit tests. Running Static Code Checks (ESLint) All SAPUI5 code must conform to a certain ruleset which is checked using a tool called ESLint (see Related Information for more details). To run an ESLint check, navigate to the root directory of the repository and execute: grunt lint Optionally, you can check a selected library only or even just a single file or directory. Running the Unit Tests The SAPUI5 unit tests are implemented using jQuery's qUnit testing framework and run by a Selenium-based... --- - Published: 2021-02-22 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/sap-gui-7-70-and-dark-theme/ - Categories: abap, tool - Tags: dark, GUI, ui SAP GUI 7.70 introduces the "Quartz" and "Quartz Dark" themes, offering a modern look and integration with the Fiori 3.0 theme. The dark mode provides a dark background for users who prefer it. New features include an alternative browser control based on Edge (Chromium), multi-monitor scaling, and enhancements like customizable focus in ALV grids and improved scripting. Support for SAP GUI 7.70 ends in April 2024. At last, SAP implemented a dark theme in official GUI 7. 70 https://blogs. sap. com/2020/05/06/sap-gui-for-windows-7. 70-beta-program-call-for-participation/ Support lifecycle Support for SAP GUI for Windows 7. 50 ended on 30 April 2020. Support for SAP GUI for Windows7. 60 will end on 12 April 2022. Support for SAP GUI for Windows 7. 70 will end on 2 April 2024. New features: New visual theme family "Quartz” The successor to the Belize theme is the Quartz theme which offers a visual integration into the Fiori 3. 0 theme available in other SAP UI frameworks. For the first time this theme also comes with an additional dark flavor for users who prefer a dark background. The feature set of Quartz is very much like the one of the Belize theme. It is available for all SAP products still being supported, it is released for Accessibility and it also supports the Fiori features (right aligned labels, automatic usage of the full screen width, and so forth) introduced in Belize. Quartz and Quartz Dark also support different color palettes for different SAP systems. The main differences to the Belize themes are the colors and some usability adjustments (like an improved contrast for selected items, additional hover states, and so on). As of release 7. 70, Quartz and Quartz Dark are the default themes in SAP GUI for Windows. If nothing else is configured, SAP GUI will start with either Quartz or Quartz Dark depending on whether the "Dark mode for applications" is activated in Windows.... --- - Published: 2021-01-13 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/rhgrenz4-to-cut-infotypes/ - Categories: abap - Tags: infotype, om, rhgrenz4 Changes rhgrenz4 example report to CUT and insert info-types 1000, 1001 and 1002 To identify duplicates in an internal table in ABAP, you can use a combination of sorting and looping. Here's an example that shows how to find duplicate entries in an internal table: DATA: BEGIN OF itab OCCURS 0, field1 TYPE i, field2 TYPE c LENGTH 10, END OF itab, wa LIKE LINE OF itab. * Add sample data to internal table itab-field1 = 1. itab-field2 = 'A'. APPEND itab. itab-field1 = 2. itab-field2 = 'B'. APPEND itab. itab-field1 = 1. itab-field2 = 'A'. APPEND itab. itab-field1 = 3. itab-field2 = 'C'. APPEND itab. itab-field1 = 2. itab-field2 = 'B'. APPEND itab. * Sort internal table by the fields you want to check duplicates for SORT itab BY field1 field2. * Compare current record with Organization Management Q&A HCM function modules SAP HR Reports – by Module HR - SRM Organization & User Integration --- - Published: 2021-01-13 - Modified: 2024-09-29 - URL: https://ultimasolution.pl/sap-abap-count-lines-in-internal-table/ - Categories: abap - Tags: internal table, tables - Formats: Link In SAP ABAP, counting lines in an internal table with a condition can be done using the REDUCE expression starting from version 7.40. Before this, developers used a LOOP to iterate over the table and increment a counter for each matching condition. An example of REDUCE for counting lines looks like this: DATA(lv_lines) = REDUCE i( INIT x = 0 FOR wa IN gt_itab WHERE( F1 = ‘XYZ’ ) NEXT x = x + 1 ). Ex1 REDUCE Definition REDUCE ... REDUCE type( INIT || || ... FOR for_exp1 FOR for_exp2 ... NEXT ... | | ... ) ... While `VALUE` and `NEW` expressions can include `FOR` expressions, `REDUCE` must include at least one FOR expression. You can use all kinds of `FOR` expressions in `REDUCE`: with `IN` for iterating internal tables with `UNTIL` or `WHILE` for conditional iterations Source: https://help. sap. com/doc/abapdocu_751_index_htm/7. 51/en-us/abenconstructor_expression_reduce. htm Before 7. 40 DATA: lv_lines TYPE i. LOOP AT gt_itab INTO ls_itab where F1 = 'XYZ'. lv_lines = lv_lines + 1. ENDLOOP. After 7. 40 DATA(lv_lines) = REDUCE i( INIT x = 0 FOR wa IN gt_itab WHERE( F1 = 'XYZ' ) NEXT x = x + 1 ). Source: https://blogs. sap. com/2015/10/25/abap-740-quick-reference/ Example SELECT * FROM mara INTO TABLE @DATA(lt_mara) UP TO 10 ROWS. DATA(lv_count) = REDUCE i( INIT i = 0 FOR wa IN lt_mara WHERE ( aenam EQ 'MARSLAN' ) NEXT i = i + 1 ). TYPES: BEGIN OF ty_material, matnr TYPE char40, maktx TYPE char40, matkl TYPE char9, END OF ty_material. DATA: lt_materials TYPE STANDARD TABLE OF ty_material. lt_materials = VALUE #( ( matnr = '000000000051000298' maktx = 'Description 1' matkl = 'A' ) ( matnr = '000000000051003780' maktx = 'Description 2' matkl = 'A' ) ( matnr = '000000000051008389' maktx = 'Description 3' matkl = 'B') ( matnr = '000000000051008390' maktx = 'Description 4' matkl = 'C' ) ( matnr = '000000000051008394' maktx = 'Description 5' matkl = 'B' ) ). * Simply get the... --- - Published: 2021-01-12 - Modified: 2022-08-11 - URL: https://ultimasolution.pl/internal-table-with-and-without-header/ - Categories: abap - Tags: tables What is a Work Area ? Work areas are single rows of data. They should have the same format as any of the internal tables. It is used to process the data in an internal table one line at a time. Difference Between Internal Table and a Work Area ? A picture says a thousand words Types of Internal Tables There are two types of internal tables. Internal tables with HEADER line Internal tables without HEADER line. Internal Tables with Header Line Here the system automatically creates the work area. The work area has the same data type as internal table. This work area is called the HEADER line. It is here that all the changes or any of the action on the contents of the table are done. As a result of this, records can be directly inserted into the table or accessed from the internal table directly. Internal Tables without Header Line : Here there is no work area associated with the table. Work area is to be explicitly specified when we need to access such tables. Hence these tables cannot be accessed directly. Creating Internal Tables There are many ways to create an Internal Table. Lets look at them one by one- 1. By Using the Type Statement Let us now create a Internal table itab using the TYPE statement. The syntax is - Example: The TYPES statement creates a structure line as defined. To actually create an Internal Table itab use the following command. Data itab... --- - Published: 2020-12-04 - Modified: 2023-11-04 - URL: https://ultimasolution.pl/find-file-without-permission-denied/ - Categories: linux - Tags: bash, files, find, grep, linux How to find file in Linux (Ubuntu) system (clean way)? FILE_NAME - name of looking of file $ find . -name FILE_NAME -print 2>/dev/null | grep -v "Permission denied" How to find files fast in Linux systems? STRING - looking of string $ sudo apt install parallel $ find . -type f | parallel -k -j150% -n 1000 -m grep -H -n STRING {} To `grep` a big file in parallel use `--pipe`: ... < bigfile parallel --pipe grep STRING Depending on your disks and `CPUs` it may be faster to read larger blocks: ... < bigfile parallel --pipe --block 10M grep STRING You can use `grep -ilR`: $ grep -Ril "text-to-find-here" / `i` stands for ignore case (optional in your case). `R` stands for recursive. `l` stands for "show the file name, not the result itself". `/` stands for starting at the root of your machine. Performing Actions based on Find Output The `-exec` command allows you to execute an action against all the files that are output from the find command. Find a file named `file1` and change permissions to `644`: ```bash $ find / -name "file1" -exec chmod 664 {} \; ``` --- - Published: 2020-11-04 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/timestamp-display-in-alv/ - Categories: abap - Tags: abap, ALV, date, sap, timestamp The provided text contains information and code related to working with timestamps and formatting them for display in an ALV (ABAP List Viewer) table. Here's a breakdown of the key points: Timestamp Format Transformation: The text begins with a description of a timestamp represented as '20,201,004,223,429' and the desire to format it as '2020-10-04 22:34'. This indicates a need to transform the timestamp from one format to another for better presentation. ABAP Code: The code section titled "FORM modify_fieldcat" shows a piece of ABAP code that is likely part of an ABAP program. It appears to be working with field catalog entries for an ALV display. In this code, a specific field with the name 'TIMESTAMP' is being modified. The modifications include setting the field as non-editable ('-edit = ' ''), indicating it's a column option ('-col_opt = 'X''), and specifying an edit mask for formatting ('-edit_mask = '____-- :''). Timestamp Conversion: The text also provides information about converting date and time into a timestamp and vice versa. It mentions that you can convert date and time into a timestamp using the 'CONVERT DATE' syntax and split a timestamp into date and time using the 'CONVERT TIME STAMP' syntax. This is useful for scenarios where you need to work with both date/time and timestamps. In summary, the text is primarily focused on formatting timestamps for display in an ALV table, and it includes relevant ABAP code for modifying field catalog entries to achieve the desired formatting. Additionally, it provides information about how to convert between date/time and timestamps when needed in ABAP programming. In ABAP, when displaying a timestamp in an ALV (ABAP List Viewer), you typically use the CL_SALV_TABLE or REUSE_ALV_GRID_DISPLAY functions to present data, including timestamp fields. The timestamp field is often stored in the TIMESTAMP or TIMESTAMPL format (CHAR type with length 14 or 21 respectively). To display it properly in an ALV, you can use formatting options or convert it into a readable format. Here's how you can display a timestamp in ALV Example using CL_SALV_TABLE: DATA: lt_data TYPE TABLE OF ztable, " Replace ztable with your table lr_alv TYPE REF TO cl_salv_table, lt_fieldcatalog TYPE salv_t_fieldcat_alv. " Select data from your table with timestamp fields SELECT * FROM ztable INTO TABLE lt_data. " Create the ALV instance cl_salv_table=>factory( IMPORTING r_salv_table = lr_alv CHANGING t_table = lt_data ). " Optionally, format the timestamp field to be more readable DATA: ls_columns TYPE REF TO cl_salv_columns_table, ls_column TYPE REF TO cl_salv_column. ls_columns = lr_alv->get_columns. " Get the timestamp field for formatting ls_column = ls_columns->get_column( 'TIMESTAMP_FIELD' ). " Replace with actual field name " Set output length (if required) and other properties ls_column->set_output_length( 21 ). " Display the ALV lr_alv->display. Example using REUSE_ALV_GRID_DISPLAY: DATA: lt_data TYPE TABLE OF ztable, " Replace ztable with your table lt_fieldcatalog TYPE slis_t_fieldcat_alv, ls_fieldcatalog TYPE slis_fieldcat_alv. " Select data with timestamp fields SELECT * FROM ztable INTO TABLE I have a time stamp which is displayed as '20,201,004,223,429'. I want to show this in ALV formatted as '2020-10-04 22:34'. FORM modify_fieldcat. LOOP AT i_fieldcat ASSIGNING . CASE -fieldname.... --- - Published: 2020-11-03 - Modified: 2020-11-03 - URL: https://ultimasolution.pl/open-sql-test-query/ - Categories: abap - Tags: jquery, open sql To test Open SQL query use transation DB02 -> Performance -> Additional functions -> SQL Command Editor Give the query. It gives the output in the result. --- - Published: 2020-10-27 - Modified: 2020-10-27 - URL: https://ultimasolution.pl/list-of-hr-functions/ - Categories: abap - Tags: hr, infotypes List of HR functions List of some Important Function Modules used in HR. BAPI_EMPLCOMM_CREATE: Maitain SAP HR communication infotype 0105 HR_LEAVING_DATE: Employee leaving date HR_INFOTYPE_OPERATION: Maintenance of HR infotype entries, used to create (operation = INS), change (operation = MOD), delete (operation = DEL) and create successor (operation = COP) HR_SPA_EMPLOYEE_DETAILS_GET: Get Employee salary details HR_GB_PERIOD_DATES: Get FI period dates based on payroll area HR_PERSONAL_WORK_SCHEDULE: Returns employees work schedule into internal table PERWS. I. e. Days planned to work (stdaz NE 0) HR_SPA_EMPLOYEE_DETAILS_GET HR_READ_FOREIGN_OBJECT_TEXT: Returns text values for objects i. e. Organisation Unit text RH_DIR_ORG_STRUC_GET: Retrieve Org. Structure (Only required parameter is org unit) RH_PM_GET_STRUCTURE: Retrieve Organisation Structure RS_PROGRAM_CHECK_NAME: To check program names if you are generating them. RS_CORR_INSERT: To insert the correction request in the repository. REPS_OBJECT_ACTIVATE: To activate repository objects, for example – to activate a newly generated program. RS_DELETE_PROGRAM: To delete the program. RS_ACCESS_PERMISSION: To lock or unlock a program. HR_ENTRY_DATES Determine the entry date (start date) of an employee HR_PT_HIRE_FIRE Get Employees Hire date and Exit date . CU_READ_RGDIR Read Payroll cluster Results data for an employee CD_READ_LAST Get latest record sequence number in a cluster directory internal table PYXX_READ_PAYROLL_RESULT Import the Complete Payroll result PYXX_GET_EVALUATION_PERIODS Import the payroll results generated in the given In-period HRCA_READ_BANK_ADDRESS_2 Read bank name and other details RP_FILL_WAGE_TYPE_TABLE_EXT Read employees all basic pay details including indirect evaluation. CONVERT_TO_LOCAL_CURRENCY Convert Foriegn currency to Local currency amount HR_GET_TOTAL_AMOUNT_P0008 Get the total amount in Infotype 8 basic pay details. HR_TMW_GET_EMPLOYEE_NAME Get the employee Name... --- - Published: 2020-10-10 - Modified: 2023-10-27 - URL: https://ultimasolution.pl/docker-error/ - Categories: docker, python - Tags: cache, docker, password Problem with large docker. I try to install ABAP with docker according installing-sap-nw-abap-into-docker/. $ docker build -t nwabap:7. 52 . error during connect: Post : write tcp 192. 168. 99. 1:61360-192. 168. 99. 101:2376: use of closed network connection Try to solve problem. # Build images and cache them to a local cache/ folder, this part takes the longest docker $ buildx build --cache-to=type=local,dest=cache,mode=max --platform linux/amd64,linux/arm64 --tag myimagename:latest . # Login docker $ login -u username -p password # Build again, but use cache from local source docker $ buildx build --push --cache-from=type=local,src=cache --platform linux/amd64,linux/arm64 --tag myimagename:latest If you run a server on your machine listening on 127. 0. 0. 1, the “loopback” or “localhost” address: $ python3 -m http. server --bind 127. 0. 0. 1 Serving HTTP on 127. 0. 0. 1 port 8000 (http://127. 0. 0. 1:8000/) ... You can then load it in your browser at http://127. 0. 0. 1:8000. But if you kill that and run it in a container: $ docker run -p 8000:8000 -it --entrypoint=bash python:3. 7-slim (docker) # python3 -m http. server --bind 127. 0. 0. 1 If you then try to connect with your browser to http://127. 0. 0. 1:8000 you’ll get connection refused or connection reset. For example, you can do: $ docker run -p 8000:8000 -it python:3. 7-slim python3 -m http. server --bind 0. 0. 0. 0 Note: --bind 0. 0. 0. 0 is specifically an option for http. server; it’s not a Docker option. Other servers will have other... --- - Published: 2020-10-06 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/sap-abap-update-infotype-1000/ - Categories: abap - Tags: abap, infotype, om, rhgrenz4, sap The provided text outlines a series of actions related to HR infotype data management in an ABAP (Advanced Business Application Programming) context. Here's a brief description of each section: Read the Infotype 1000 Data: In this section, HR infotype data of type 1000 is read and stored in the 'lt_p1000' internal table. The data is retrieved based on specified parameters like personnel area ('plvar'), object type ('otype'), object ID ('objid'), and date range ('begda' and 'endda'). Modify the Name in Infotype: The code updates a specific field, 'stext' in the 'lt_p1000' internal table with a new value ('lv_stext_new'). Update the Infotype in Buffer: The 'RH_UPDATE_INFTY' function module is called to update the HR infotype data in the buffer. It specifies parameters such as the update task ('vtask'), authorization ('authy'), and work item activation ('workf_actv'). Update to the Database: After all changes are made, the 'RH_UPDATE_DATABASE' function module is called to write the updates to the database. It specifies the update task ('vtask') and work item activation status ('workf_actv'). How to Correct 'endda': A separate process involves submitting a report ('rhgrenz4') to correct the 'endda' (end date) of HR infotype data. It passes various parameters to the report, including the personnel area, object type, object ID, and date ranges. The text provides a series of steps and ABAP code for managing and updating HR infotype data, including reading, modifying, and ultimately updating the data in both the buffer and the database. It also includes a process for correcting the 'endda' date via a separate report ('rhgrenz4'). Read the infotype 1000 data DATA: lt_p1000 TYPE TABLE OF p1000, lv_p1000 LIKE LINE OF lt_p1000, lv_object TYPE hrobject. CALL FUNCTION 'RH_READ_INFTY_1000' EXPORTING plvar = lv_object-plvar otype = lv_object-otype objid = lv_object-objid begda = sy-datum endda = sy-datum TABLES i1000 = lt_p1000 Modify the name in infotype lv_p1000-stext = lv_stext_new. MODIFY lt_p1000 FROM lv_p1000. Update the infotype in buffer CALL FUNCTION 'RH_UPDATE_INFTY' EXPORTING vtask = 'B' "Buffer commit_flg = ' ' authy = 'X' workf_actv = ' ' TABLES innnn = lt_p1000. After all changes are made, write update to the DB CALL FUNCTION 'RH_UPDATE_DATABASE' EXPORTING vtask = 'S' workf_actv = ' '. How to correct endda rhgrenz4 SUBMIT rhgrenz4 AND RETURN "VIA SELECTION-SCREEN WITH pchplvar EQ '01' WITH pchotype EQ 'C' WITH pchobjid EQ lo_limit_notuse->cwa_notuse-objid WITH pchistat EQ '1' WITH pchobeg EQ defaultbegda WITH pchoend EQ defaultendda WITH pchbegda EQ defaultbegda WITH pchendda EQ defaultendda WITH g_dat EQ sel_endda WITH new_end EQ dsl_endda WITH test EQ 'X' WITH anzeige EQ 'X'. We have brand-new report rhgrenz4 --- - Published: 2020-09-30 - Modified: 2020-09-30 - URL: https://ultimasolution.pl/get-time-stamp-option-in-your-abap-program/ - Categories: abap - Tags: sapui5, timestamp TABLES: ztable " Database table DATA: wa TYPE ztable, dbtab TYPE TABLE OF ztable. GET TIME STAMP FIELD wa-timestamp. " Move timestamp value to work area INSERT dbtab FROM wa. " Insert an entry into database --- - Published: 2020-09-30 - Modified: 2020-09-30 - URL: https://ultimasolution.pl/salv-programming/ - Categories: abap - Tags: bal *&---------------------------------------------------------------------* *& Report ZVK_CL_SALV *&---------------------------------------------------------------------* *&Report using OOPs with Basic functionalities. *&---------------------------------------------------------------------* REPORT zvk_cl_salv_1. TABLES : vbak. TYPE-POOLS : abap,rsanm. TYPES : BEGIN OF t_vbak. INCLUDE TYPE vbak. TYPES : t_color TYPE lvc_t_scol, END OF t_vbak. DATA : lt_vbak TYPE STANDARD TABLE OF t_vbak, ls_vbak TYPE t_vbak. FIELD-SYMBOLS : TYPE t_vbak. DATA : l_rec(5) TYPE n. ** Declaration for ALV Grid ** DATA : gr_table TYPE REF TO cl_salv_table. ** Declarations for ALV Functions DATA : gr_functions TYPE REF TO cl_salv_functions_list. ** declaration for ALV Columns DATA : gr_columns TYPE REF TO cl_salv_columns_table, gr_column TYPE REF TO cl_salv_column_table, lt_column_ref TYPE salv_t_column_ref, ls_column_ref TYPE salv_s_column_ref. ** declaration for Layout Settings DATA : gr_layout TYPE REF TO cl_salv_layout, gr_layout_key TYPE salv_s_layout_key, ls_layout TYPE salv_s_layout, lt_layout_info TYPE salv_t_layout_info. ** Declaration for Global Display Settings DATA : gr_display TYPE REF TO cl_salv_display_settings, lv_title TYPE lvc_title. ** Declaration for Aggregate Function Settings DATA : gr_aggr TYPE REF TO cl_salv_aggregations. ** Declaration for Sort Function Settings DATA : gr_sort TYPE REF TO cl_salv_sorts. ** Declaration for Table Selection settings DATA : gr_select TYPE REF TO cl_salv_selections. ** Declaration for Top of List settings DATA : gr_content TYPE REF TO cl_salv_form_element. ** Class for handling Events CLASS : lcl_handle_events DEFINITION DEFERRED. DATA : gr_events TYPE REF TO lcl_handle_events, lr_events TYPE REF TO cl_salv_events_table. ** Coloring of Date columns ** DATA : lt_colo TYPE STANDARD TABLE OF lvc_s_colo, ls_colo TYPE lvc_s_colo. ** Color Structure of columns ** DATA : lt_color TYPE lvc_t_scol, ls_color TYPE lvc_s_scol. *----------------------------------------------------------------------* * CLASS... --- - Published: 2020-09-29 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/lvc_fieldcatalog_merge-how-to-use/ - Categories: abap - Tags: abap, ALV, LVC_FIELDCATALOG_MERGE Understanding Field Catalog in ALV (ABAP List Viewer) In ABAP, the field catalog is a key element when working with ALV (ABAP List Viewer) to define how the data from internal tables is displayed. It provides control over various properties of the fields displayed in the ALV, such as column headers, alignment, visibility, editability, etc. Key Concepts: Field Catalog: This is a table (usually of type lvc_t_fcat for modern ALV grid or slis_t_fieldcat_alv for old ALV grid) that contains metadata about each field of the internal table displayed in the ALV. It defines how each column should appear (e.g., column headers, field alignment, output length). Creating a Field Catalog: You can manually define a field catalog or use a function module like LVC_FIELDCATALOG_MERGE to automatically create one based on a data dictionary structure (DDIC). After generating the catalog, you can modify it to adjust field properties. Field catalog All fields of the global structure type appears in the data table with the same name. Now the requirement is to introduce changes to the dictionary structure or the additional columns are to be displayed. In this case we can call a function module ( LVC_FIELDCATALOG_MERGE ) that returns the field catalog of the dictionary structure to a table of type lvc_t_fcat. Now we can loop it and can make whatever changes we want. The REUSE_*ALV* function modules are unsupported. I'd suggest switching to the CL_SALV_* classes. The documentation is better, there are more sample programs (DEMO_SALV_*) and you get support. You need a dictionary structure if you want to get dictionary-based field descriptions (duh). If you assemble a structure type on the ABAP level using TYPE ... BEGIN OF ... END OF ... , as far as I know, the dictionary types for the individual fields are converted to ABAP types first and only then assembled into a structure type. Anyway, the dictionary reference of the original fields is lost. Instead of defining the structure of the output table in your code, use a dictionary structure. There are several different text components provided by structure slis_fieldcat_alv that are used as column labels. The chosen text depends on the current column width (which itself usually depends on the length of the data displayed). Make sure that you change them all accordingly! The usual technique is: By passing the I_STRUCTURE_NAME, you get a field catalog corresponding to this DDIC... --- - Published: 2020-09-06 - Modified: 2023-09-20 - URL: https://ultimasolution.pl/alv-color/ - Categories: abap *&---------------------------------------------------------------------* *& This code snippet will show how to use the CL_SALV_TABLE to *& generate the ALV and COLORs for Column, Row and Specific Cell *&---------------------------------------------------------------------* REPORT ztest_oo_alv_color. * *----------------------------------------------------------------------* * CLASS lcl_report DEFINITION *----------------------------------------------------------------------* CLASS lcl_report DEFINITION. * PUBLIC SECTION. * * Final output table TYPES: BEGIN OF ty_vbak, vbeln TYPE vbak-vbeln, erdat TYPE erdat, auart TYPE auart, kunnr TYPE kunnr, t_color TYPE lvc_t_scol, END OF ty_vbak. TYPES: ty_t_vbak TYPE STANDARD TABLE OF ty_vbak. * DATA: t_vbak TYPE STANDARD TABLE OF ty_vbak. * * ALV reference DATA: o_alv TYPE REF TO cl_salv_table. * METHODS: * data selection get_data, * * Generating output generate_output. * *$*$*... . . CODE_ADD_1 - Begin... ... ... ... ... ... ... ... ... ... ... . 1. . *$*$* * * In this section we will define the private methods which can * be implemented to set the properties of the ALV and can be * called in the * PRIVATE SECTION. METHODS: set_pf_status CHANGING co_alv TYPE REF TO cl_salv_table. * METHODS: set_colors CHANGING co_alv TYPE REF TO cl_salv_table ct_vbak TYPE ty_t_vbak. * *$*$*... . . CODE_ADD_1 - End... ... ... ... ... ... ... ... ... ... ... ... 1. . *$*$* * ENDCLASS. "lcl_report DEFINITION * * START-OF-SELECTION. DATA: lo_report TYPE REF TO lcl_report. * CREATE OBJECT lo_report. * lo_report->get_data. * lo_report->generate_output. * *----------------------------------------------------------------------* * CLASS lcl_report IMPLEMENTATION *----------------------------------------------------------------------* CLASS lcl_report IMPLEMENTATION. * METHOD get_data. * data selection SELECT vbeln erdat auart kunnr INTO CORRESPONDING FIELDS OF TABLE t_vbak FROM vbak UP... --- - Published: 2020-08-31 - Modified: 2020-08-31 - URL: https://ultimasolution.pl/relationships-infotype-1001/ - Categories: abap - Tags: infotypes Relationships (Infotype 1001) Definition Assignments between objects. Use If, when processing organizational data, you have defined assignments between objects, the system stores these assignments as relationships in this infotype. You use assignments between objects to enter the following business issues in the system: Hierarchical structures You define assignments between objects to describe their hierarchical relationship to each other. For example, you assign organizational units to each other hierarchically to represent the organizational structure of your enterprise or your organization and assign the individual organizational units the positions that belong to them. You also use assignments to state which employee staffs which position. Object characteristics You can use assignments to define object characteristics if own object types are planned to represent these characteristics in the system in the data model for the component Personnel & Organization You can use the assignment of jobs to positions to describe the characteristics. Note You use object-type-specific infotypes rather than own object types to define the majority of object characteristics. Relationships to objects of other components You can use assignments to represent relationships between objects of the component Personnel & Organization and objects of other components in the system. You can thus assign organizational units or positions to cost centers to represent the relationship between the organizational structure and the cost center structure. You can use the functions of the component Personnel & Organization to represent the following assignments: Structure The system stores the data on assignments in the infotype Relationships (database table HRP1001). The... --- - Published: 2020-07-12 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/programming-sap-abap-hr-mo-infotypes-1000-1001/ - Categories: abap, portfoilio - Tags: abap, hr, infotype, infotypes, om, open sql, sap The provided text covers various aspects of SAP HR (Human Resources) and HR programming. It includes information related to infotypes, data structure, HR modules, and programming in the HR module. Here's a summary: Infotypes and Data Dictionary: The text mentions infotypes, such as P1000 and P1001, and provides a brief description of how they are stored in the data dictionary. It also discusses the concept of transparent, pooled, and cluster tables in the context of SAP HR. Comparison of Table Types: It briefly explains the major differences between standard tables, pooled tables, and clustered tables in SAP HR. Programming in HR: The text delves into SAP HR programming, focusing on the use of ABAP. It provides code examples for reading and changing infotypes, as well as accessing HR data in a programmatic manner. Data Retrieval: It describes the process of retrieving HR data and converting numeric values into human-readable text, such as position and organizational unit names. Reverse Connection: There is a mention of reverse 1001 connection with delete or insert. SAP Object Types: A list of SAP object types and their respective codes is provided, including Organizational Unit (O), Job (C), Position (S), and others. SAP P1001 Structure Fields: It lists the fields within the SAP P1001 infotype, including fields for object type, object ID, infotype, relationship specification, planning status, and more. Example Program: The text includes an example program with ABAP code for working with infotypes, using loops, and making SAP HR-related function module calls. Logical Databases: Logical databases are mentioned, and there's a reference to external resources for further learning about SAP HR organizational management. In summary, the text provides a wide range of information related to SAP HR, from data structures and table types to programming and data retrieval. It also offers insights into the key components and functionalities of SAP HR modules. Intoduction Here you found some information about programming in HR module. First check existence infotypes: PPCI Look at structure transparent tabletransparent table What is transparent, cluster and pool table? Where and when we use these tables? Transparent Table : Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. Pooled Table : Pooled tables are logical tables that must be assigned to a table pool when they are defined. Pooled tables are used to store control data. Several pooled tables can be combined in a table pool. The data of these pooled tables are then sorted in a common table in the database. Cluster Table : Cluster tables are logical tables that must be assigned to a table cluster when they are defined. Cluster tables can be used to store control data. They can also be used to store temporary data or texts, such as documentation. Could anyone tell me what is the major difference between Standard tables, Pooled tables and Clustered Tables? A transparent table is a table that stores data directly. You can read these tables directly on the database from outside SAP with for instance an SQL statement. Transparent table is a one-to-one relation table, i. e. when you create one transparent table then exactly same table will create in database and if is basically used to store transaction data. A clustered and a pooled table cannot be read from outside SAP because certain data are clustered... --- - Published: 2020-06-12 - Modified: 2024-09-07 - URL: https://ultimasolution.pl/integracja-ci-di-dla-plsql-oracle/ - Categories: plsql - Tags: ci, devops, di, oracle, plsql The database structure is initially dumped to a file, committed to Git as text files, and populated with test data for each table. Unit tests are written, using tools like utPLSQL to verify database functionality. The workflow involves checking out the dev branch, applying changes to a clean database, running tests, and reviewing the code via platforms like JIRA or GitHub. Full Solution (Draft) Step 1: Database Structure and Schema Setup The first step involves dumping the structure of the database or schema to a file, excluding the actual data. This structure is then version-controlled in Git as text files. To facilitate this process, the utPLSQL Maven plugin is used. This worked seamlessly for me since the dump of the data structure was written in Java. For each table, a set of test data is prepared, ensuring that relationships between tables are maintained and that the data makes sense. The operations performed (such as inserts or updates) are tested via API calls against the corresponding tables or functions related to the entity. The final step is to implement these operations on a clean database or schema. This allows us to generate the full set of schema components (procedures, packages, etc. ) along with tests from the Git repository. Unit tests are then run to verify that the implementation is correct (TRUE/FALSE checks). Step 2: Writing Unit Tests At this stage, unit tests are written. A suitable choice for this would be utPLSQL version 3, which I believe is now appropriate for performing unit tests. In previous versions (e. g. , version 2), this wasn’t as convincing for me. If using the utPLSQL library for unit tests doesn't seem appropriate, consider developing a custom verification method by writing unified tests in PL/SQL. This flexibility allows you to tailor the testing process according to your project’s needs. Step 3: Documentation and Scalability To... --- - Published: 2020-05-05 - Modified: 2023-09-20 - URL: https://ultimasolution.pl/omnit-permission-denied-in-find/ - Categories: linux - Tags: find, linux find / -name art 2>&1 | grep -v "Permission denied" --- - Published: 2020-04-29 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/10-way-to-print-array-in-java/ - Categories: java - Tags: array package ultima; import com. fasterxml. jackson. databind. ObjectMapper; import com. fasterxml. jackson. databind. ObjectWriter; import com. google. gson. Gson; import java. io. IOException; import java. time. DayOfWeek; import java. util. Arrays; import java. util. stream. Collectors; import java. util. stream. IntStream; import java. util. stream. Stream; import java. util. Arrays; public class ArrayToString { public static void main(String args) throws IOException { String strArray = new String{"John", "Mary", "Bob"}; // #1 Arrays. asList(strArray). stream. forEach(s -> System. out. println(s)); // #2 Stream. of(strArray). forEach(System. out::println); // #3 Arrays. stream(strArray). forEach(System. out::println); // #4 System. out. println(Arrays. toString(strArray)); // #5 // String strArray = new String{"John", "Mary", "Bob"}; for (String n : strArray) { System. out. println(n); } // #6 System. out. println(Arrays. deepToString(strArray). replaceAll("],", "]," + System. getProperty("line. separator"))); // #7 int intArray = new int{1, 2, 3, 4, 5}; for (int i = 0; i < intArray. length; i++) { System. out. print(intArray + ", "); } // #8 // // com. fasterxml. jackson. core // jackson-databind // 2. 9. 8 // // https://mvnrepository. com/artifact/com. fasterxml. jackson. core/jackson-databind //compile group: 'com. fasterxml. jackson. core', name: 'jackson-databind', version: '2. 0. 1' ObjectWriter ow = new ObjectMapper. writer. withDefaultPrettyPrinter; System. out. println(ow. writeValueAsString(strArray)); Gson gson = new Gson; System. out. println(gson. toJson(strArray)); // #9 int x = {1, 2, 3}; String printableText = Arrays. toString(x). replaceAll("]", ""). replaceAll(", ", "n"); System. out. println(printableText); // #10 // int intArray = new int{1, 2, 3, 4, 5}; // String strArray = new String{"John",... --- - Published: 2020-04-25 - Modified: 2020-08-21 - URL: https://ultimasolution.pl/aws/ - Categories: aws - Tags: aws Install local curl "https://awscli. amazonaws. com/awscli-exe-linux-x86_64. zip" -o "awscliv2. zip" unzip awscliv2. zip sudo . /aws/install aws --version Running the official AWS CLI version 2 Docker image The official AWS CLI version 2 Docker image is hosted on DockerHub in the amazon/aws-clirepository. The first time you use the docker run command, the latest Docker image is downloaded to your computer. Each subsequent use of the docker run command runs from your local copy. To run the AWS CLI version 2 Docker image, use the docker run command. $ docker run --rm -it amazon/aws-cli command The command is how the command functions: Thedocker run --rm --it amazon/aws-cli is the equivalent to the aws executable. Each time you run this command, Docker spins up a container of your downloaded amazon/aws-cli image, and executes your aws command. By default, the Docker image uses the latest version of the AWS CLI version 2. For example, to call the aws --version command in Docker, you run the following. $ docker run --rm -it amazon/aws-cli --version aws-cli/2. 0. 6 Python/3. 7. 3 Linux/4. 9. 184-linuxkit botocore/2. 0. 0dev10 The --rm specifies to clean up the container after the command exits. The -it specifies to open a pseudo-TTY with stdin. This allows you to provide input to the AWS CLI version 2 while it's running in a container, for example, by using the aws configureand aws help commands. For more information about thedocker runcommand, see the Docker reference guide --- - Published: 2020-04-24 - Modified: 2022-07-14 - URL: https://ultimasolution.pl/how-to-youtube-dl/ - Categories: linux - Tags: git, mp3, password INSTALLATION To install it right away for all UNIX users (Linux, macOS, etc. ), type: sudo curl -L https://yt-dl. org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl If you do not have curl, you can as an option use a recent wget: sudo wget https://yt-dl. org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl Windows users can download an . exe file and place it in any location on their PATH except for %SYSTEMROOT\%System32 (e. g. do not put in C:\Windows\System32). You can also use pip: sudo -H pip install --upgrade youtube-dl This command will update youtube-dl if you have already installed it. See the pypi page for more information. sudo port install youtube-dl Alternatively, refer to the developer instructions for how to check out and work with the git repository. For further options, including PGP signatures, see the youtube-dl Download Page. CONFIGURATION You can configure youtube-dl by placing any supported command line option to a configuration file. On Linux and macOS, the system wide configuration file is located at /etc/youtube-dl. conf and the user wide configuration file at ~/. config/youtube-dl/config. On Windows, the user wide configuration file locations are %APPDATA%\youtube-dlconfig. txt or C:\Users\\youtube-dl. conf. Note that by default configuration file may not exist so you may need to create it yourself. For example, with the following configuration file youtube-dl will always extract the audio, not copy the mtime, use a proxy and save all videos under Movies directory in your home directory: # Lines starting with # are comments # Always extract... --- - Published: 2020-04-01 - Modified: 2022-08-06 - URL: https://ultimasolution.pl/java-strategy-design-patterns/ - Categories: js - Tags: class Strategy is a behavioural design pattern that turns a set of behaviours into objects and makes them interchangeable inside original context object. Java 8 brought the support of lambda functions, which can serve as simpler alternatives to the Strategy pattern. Here some examples of Strategy in core Java libraries: java. util. Comparator#compare called from Collections#sort. Examples In this example, the Strategy pattern is used to implement the various payment methods in an e-commerce application. After selecting a product to purchase, a customer picks a payment method: either Paypal or credit card. Concrete strategies not only perform the actual payment but also alter the behavior of the checkout form, providing appropriate fields to record payment details. Other examples it is implement various login method for users. After selecting authentication method (ie. LinkedIn, Facebook, Google) in ContextAuthenticator context = new ContextAuthenticator(new GoogleAuthenticator); context. login("james@gml. com", "S*s23Sd"); context. logout; //sign in with google context = new ContextAuthenticator(new FacebookAuthenticator); context. login("jack@gml. com", "Jkjs23*kw"); context. logout; //sign in with linkedIn package Strategy; public interface AuthenticationProvider { void login(String username, String password); void logout; } package Strategy; public class ContextAuthenticator { private AuthenticationProvider strategy; ContextAuthenticator(AuthenticationProvider strategy) { this. strategy = strategy; } public void login(String username, String password) { strategy. login(username, password); } public void logout { strategy. logout; } } package Strategy; public class FacebookAuthenticator implements AuthenticationProvider { @Override public void login(String username, String password) { System. out. println("Authenticating with facebook... "); } @Override public void logout { System. out. println("Logging out with facebook... ");... --- - Published: 2020-02-10 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/spring-boot-rest/ - Categories: java, portfoilio - Tags: api Stack Simple REST backend service. Spring Boot Unit Test 4/5 Mockito HSQL -> MYSQL Task Client can apply for loan asking for amount and term Loan application evaluation: Application is risky if: Loan application is done for max amount and loan application is created between 0:00–6:00 Client Applied 3 times using the same IP address Loan is granted if loan application goes through risk evaluation without errors. Once within loan term client can apply for term to be prolonged up to 14 days. Planned Add Swagger to recognize this service https://swagger. io/resources/articles/best-practices-in-api-design/ Add docker and deploy service to AWS from GitHub Add stemming libs from IoT . Analyse I assume that the risky loan request will be rejected. Loan entity static MAX_LOAN = 1000 - overrun loanId Int artifical id. Amount Long LoanName String Ip String TermAt Date historyLog String - info about allowed operations. CreatedAt Date UpdatedAT Date example: { "id": 4, "amount": 999, "loanName": "IBM", "ip": "192. 168. 1. 6", "termAt": "2020-02-22T16:01:08. 756+0000", "historyLog": null, "createdAt": "2020-02-08T16:01:08. 756+0000", "loanId": 4, "curentTime": "2020-02-08T16:01:08. 900+0000", "prolongedTerm": false, "curentIp": "192. 168. 1. 6" } riskEvaluation amount > MAX_LOAN. createdAt . ip same for 3 last apply in the same loanName. UnitTest Take Loan < MAX_LOAN out of - accepted. Take loan > MAX_LOAN - declined. Take loan from different IP. Take loan in different time . TrolongTerm - check changes. Prolong two times loan - declined. Impementation spring-boot-rest sample init data HSQL in import. sql junit test Setting environment (InteliJ) http://start.... --- - Published: 2019-12-30 - Modified: 2019-12-30 - URL: https://ultimasolution.pl/event-handling-in-spring/ - Categories: java Spring's event handling is single-threaded so if an event is published, until and unless all the receivers get the message, the processes are blocked and the flow will not continue. Hence, care should be taken when designing your application if the event handling is to be used. Event publishing is one of the capabilities provided by ApplicationContext. There are a few simple guidelines to follow: the event should extend ApplicationEvent the publisher should inject an ApplicationEventPublisher object the listener should implement the ApplicationListener interface A Simple Application Event Let’s create a simple event class – just a placeholder to store the event data. In this case, the event class holds a String message: public class CustomSpringEvent extends ApplicationEvent { private String message; public CustomSpringEvent(Object source, String message) { super(source); this. message = message; } public String getMessage { return message; } } Now let’s create a publisher of that event. The publisher constructs the event object and publishes it to anyone who's listening. To publish the event, the publisher can simply inject the ApplicationEventPublisher and use the publishEvent API: @Component public class CustomSpringEventPublisher { @Autowired private ApplicationEventPublisher applicationEventPublisher; public void doStuffAndPublishAnEvent(final String message) { System. out. println("Publishing custom event. "); CustomSpringEvent customSpringEvent = new CustomSpringEvent(this, message); applicationEventPublisher. publishEvent(customSpringEvent); } } A Listener Finally, let's create the listener. The only requirement for the listener is to be a bean and implement ApplicationListener interface: @Component public class CustomSpringEventListener implements ApplicationListener { @Override public void onApplicationEvent(CustomSpringEvent event) { System. out. println("Received spring custom... --- - Published: 2019-12-30 - Modified: 2020-08-21 - URL: https://ultimasolution.pl/bigdecimal-class-in-java/ - Categories: java - Tags: bigdecimal java. math → --- - Published: 2019-12-28 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/traveling-on-paths-that-have-heart/ - Categories: life - Tags: quote “For me there is only the traveling on paths that have heart, on any path that may have heart, and the only worthwhile challenge is to traverse its full length -- and there I travel looking, looking breathlessly. ” --- - Published: 2019-12-22 - Modified: 2023-03-08 - URL: https://ultimasolution.pl/filo-stack-in-java/ - Categories: java - Tags: stack Example implementation FILO stack in Java. Implement a stack (i. e. a First-In-Last-Out queue) with an additional `min` operation that returns the smallest element in the stack. All the operations (`push`, `pop` and `min`) should have `O(1)` time complexity. You are free to implement the task in any of the following programming languages: - `Java`, `Kotlin` - `Python` - `TypeScript` or `JavaScript` Provide the necessary scripts to build and run the program. Implement unit tests. Example implementation FILO stack in Java package warmup; import java. util. *; import java. util. Random; // Java program to implement a stack that supports getMin in O(1) time and O(1) class StackFILO_O1 --- - Published: 2019-11-11 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/blockchain-in-java/ - Categories: java, portfoilio - Tags: blockchain, java, wallet This class implements a basic blockchain in Java, incorporating fundamental blockchain concepts such as block validation, transactions, and wallet management. Simple implementation blockchain implemented in Java on Linux. Clone catalog GitHub repo git clone git@github. com:karol-preiskorn/java-examples. git src/main/java/blockchain/ Setup environment We need Gradle to test and run. Simple method to install. Try use https://sdkman. io/usage SDKMAN! (my favorite) curl -s "https://get. sdkman. io" | bash source "$HOME/. sdkman/bin/sdkman-init. sh" Install Java & Gradle # list all version sdk list java * # choice one sdk install java 13. 0. 1. j9-adpt # list all version gradle sdk list gradle * # choice 6. * because we will test by jupiter sdk install gradle 6. 0. 1 Minimum theory We create simple list. Every next element is linked by hash key with body block Source @github package blockchain; import java. util. ArrayList; import java. util. Date; public class Block { public String hash; public String previousHash; public String merkleRoot; public ArrayList transactions = new ArrayList; //our data will be a simple message. public long timeStamp; //as number of milliseconds since 1/1/1970. public int nonce; //Block Constructor. public Block(String previousHash) { this. previousHash = previousHash; this. timeStamp = new Date. getTime; this. hash = calculateHash; //Making sure we do this after we set the other values. } //Calculate new hash based on blocks contents public String calculateHash { return StringUtil. applySha256( previousHash + Long. toString(timeStamp) + Integer. toString(nonce) + merkleRoot ); } //Increases nonce value until hash target is reached. public void mineBlock(int difficulty) { merkleRoot = StringUtil. getMerkleRoot(transactions); String target = StringUtil. getDificultyString(difficulty); //Create a string with difficulty * "0" while... --- - Published: 2019-10-31 - Modified: 2023-09-20 - URL: https://ultimasolution.pl/list-of-list-in-java/ - Categories: java - Tags: array, collection, string The Java List interface, java.util.List, represents an ordered sequence of objects. The elements contained in a Java List can be inserted, accessed, iterated and removed according to the order in which they appear internally in the Java List. The ordering of the elements is why this data structure is called a List. Input The Java List interface, java. util. List, represents an ordered sequence of objects. The elements contained in a Java List can be inserted, accessed, iterated and removed according to the order in which they appear internally in the Java List. The ordering of the elements is why this data structure is called a List. Each element in a Java List has an index. The first element in the List has index 0, the second element has index 1 etc. The index means "how many elements away from the beginning of the list". The first element is thus 0 elements away from the beginning of the list - because it is at the beginning of the list. You can add any Java object to a List. If the List is not typed, using Java Generics, then you can even mix objects of different types (classes) in the same List. Mixing objects of different types in the same List is not often done in practice, however. The Java List interface is a standard Java interface, and it is a subtype of the Java Collection interface, meaning List inherits from Collection. Ref https://docs. oracle. com/javase/7/docs/api/java/util/Arrays. html Code Output The List is: The List is: , , ] --- - Published: 2019-10-19 - Modified: 2023-10-18 - URL: https://ultimasolution.pl/casting-type-in-java-type-safety-unchecked-cast-from-object-to-hashtable/ - Categories: java - Tags: Hashtable, java, types Problem How resolve warning: Type safety: Unchecked cast from Object to Hashtable. Type safety: Unchecked cast from Object to Hashtable at line 23 and 24. Solution alt line 38 Code --- - Published: 2019-01-12 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/materialized-views-refresh-fast-categories/ - Categories: sql - Tags: oracle, sql - Formats: Link Materialized Views REFRESH FAST Categories There are three ways to categorize a materialized view's ability to be fast refreshed. It can never be fast refreshed. It can always be fast refreshed. It can be fast refreshed after certain kinds of changes to the base table but not others. For the first case Oracle will raise an error if you try to create such a materialized view with its refresh method defaulted to REFRESH FAST. In the example below table T does not have a materialized view log on it. Materialized views based on T cannot therefore be fast refreshed. If we attempt to create such a materialized view we get an error. create materialized view MV REFRESH FAST as select * from t2 ; as select * from t2 * ERROR at line 3: ORA-23413: table "SCOTT". "T2" does not have a materialized view log Source: Materialized Views: REFRESH FAST Categories --- - Published: 2019-01-04 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/how-do-you-embed-album-art-into-an-mp3-using-python/ - Categories: python - Tags: api - Formats: Link from mutagen. mp3 import MP3 from mutagen. id3 import ID3, APIC, error audio = MP3('example. mp3', ID3=ID3) # add ID3 tag if it doesn't exist try: audio. add_tags except error: pass audio. tags. add( APIC( encoding=3, # 3 is for utf-8 mime='image/png', # image/jpeg or image/png type=3, # 3 is for the cover image desc=u'Cover', data=open('example. png'). read ) ) audio. save https://stackoverflow. com/a/1937425/2390255 --- - Published: 2019-01-03 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/alonefold/ - Categories: life - Tags: music - Formats: Audio Alonefold is the musical project of Australian artist and composer Scott Ashton Beardow. His works blend a mixture of experimental synthesizer music, acoustic recordings and multi layered soundscapes. spotify bandcamp soundcloud --- - Published: 2018-11-14 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/log-errors-oralces-dml/ - Categories: sql - Tags: error, log, oracle, sql - Formats: Link This PL/SQL block dynamically creates and populates a table based on a SELECT statement, while using Oracle's DBMS_ERRLOG package to handle any runtime errors during the INSERT operation. Very powerfully and simple solution for 10g+ database. This script is useful for data migration or transformation tasks where some records may fail due to data quality issues, but you want the process to continue for the rest. The failed records and their error reasons are saved for review, without halting the whole insert operation. Would you like an example of how the ERR$_ table looks or how to query it for logged errors? DECLARE l_sql_statement VARCHAR2(30000) := ' SELECT emp. * ,sal / comm sal_to_comm_ratio FROM scott. emp emp '; l_create_table_sql VARCHAR2(32767); l_insert_table_sql VARCHAR2(32767); l_table_name VARCHAR2(30) := 'XXERR_TEST'; l_error_table_name VARCHAR2(30) := 'ERR$_' || l_table_name; BEGIN l_create_table_sql := 'CREATE TABLE ' || l_table_name || ' AS SELECT * FROM (' || l_sql_statement || ') WHERE 1=2'; EXECUTE IMMEDIATE l_create_table_sql; dbms_errlog. create_error_log(dml_table_name => l_table_name); l_insert_table_sql := 'INSERT INTO ' || l_table_name || ' SELECT * FROM (' || l_sql_statement || ') LOG ERRORS INTO err$_' ||l_table_name || ' (''INSERT'') REJECT LIMIT UNLIMITED'; EXECUTE IMMEDIATE l_insert_table_sql; dbms_output. put_line('Error Messages are stored in table ' || l_error_table_name); END;   Source: Run Library Script https://livesql. oracle. com/apex/livesql/file/content_DKGPNGUHVKH7JRGJ1TWPDGIGP. html --- - Published: 2018-11-14 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/oracle-sql-update-a-table-with-data-from-another-table/ - Categories: sql - Tags: oracle, sql - Formats: Link Highly active question. You have enough reputation to answer this question. The reputation requirement helps protect this question from spam and non-answer activity. Learn more. Table 1: id name desc ----------------------- 1 a abc 2 b def 3 c adf Table 2: id name desc ----------------------- 1 x 123 2 y 345 Solution UPDATE table1 t1 SET (name, desc) = (SELECT t2. name, t2. desc FROM table2 t2 WHERE t1. id = t2. id) WHERE EXISTS ( SELECT 1 FROM table2 t2 WHERE t1. id = t2. id ) UPDATE (SELECT t1. id, t1. name name1, t1. desc desc1, t2. name name2, t2. desc desc2 FROM table1 t1, table2 t2 WHERE t1. id = t2. id) SET name1 = name2, desc1 = desc2 Source: Oracle SQL: Update a table with data from another table - Stack Overflow --- - Published: 2018-10-04 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/how-to-show-progress-bar-for-linux-commands/ - Categories: linux - Tags: bash, data, example, git, linux, terminal - Formats: Link Very useful information for ppl uses lot of script works in Linux enviroment. Many Linux commands like `dd`, `cp`, `rsync`, and `mv` are progressive but have no progress bars showing as they run. There is no built-in way to check the progress of ongoing operations except few commands that recently had commits ( dd command has status=progress from `GNU` coreutils version 8. 24). In this article, we’ll look at certain Linux tools and options which allow you to monitor the progress of data being transferred. Debian, Ubuntu and Linux Mint ` # apt-get install pv ` Monitor the progress of creating an archive using gzip In this example, we use pv with `gzip` in the following example: $ pv -tpre ~/Desktop/testfile. iso | gzip > ~/Desktop/testfile. gz 213MiB 0:00:14 32% ETA 0:00:29 Monitor the progress when copying a file with pv bash $ pv ~/Desktop/testfolder/* > ~/Desktop/ 667MiB 0:00:13 100% Using pv without any switches will automatically run with the default p, t, e,r and b switches. Using pv and dialog commands to create a dialog progress bar $ pv ~/Desktop/testfile. iso > ~/Desktop/destinationfile. iso | dialog --gauge "Progress" 10 70 Installing Progress You can install progress on any distro with these steps. (for Debian/Ubuntu) users: $ sudo apt-get install libncurses5-dev or clone git repo: # git clone https://github. com/Xfennec/progress. git # make # make install Progress Usage with Examples The general syntax for progress is watch progress -q. This lets you monitor all current and upcoming transfers in a... --- - Published: 2018-09-15 - Modified: 2025-10-27 - URL: https://ultimasolution.pl/projektowanie-stron-i-sklepow-wordpress/ - Categories: portfoilio, wordpress - Tags: ci, class, grid, html, linux, project, webpage, wordpress Dlaczego? Strony i sklepy internetowe starzeją się (technologicznie i estetycznie) bardzo szybko. Mniej więcej co pół roku pojawiają się nowe rozwiązania, zdecydowanie poprawiające szybkość, efektywność i funkcjonalność ich działania. Zastanawiasz się czasem czy nie warto byłoby poprawić czegoś na Twojej stronie internetowej, czy też w Twoim sklepie lub, czy nie zbudować jej/go całkiem od nowa? By może utrzymanie obecnego rozwiązania kosztuje za dużo? Może brakuje integracji z innymi aplikacjami? Sensownego procesu dotacji lub sprzedaży? Dobrze trafiłeś! Zajmuje się tworzeniem lub przebudową stron w WordPress. Zapewniam zaprojektowanie stron i pomoc we wdrożeniu się w zarządzaniu treścią. W cenie projektu przewiduję instrukcję i pomoc w standardowych problemach, jakie się pojawiają przy pracy z WordPress. Zadzwoń lub napisz - przygotuje dla Ciebie bezpłatną wycenę. Wytłumaczę Ci sposób działania, po czym zaproponuje optymalne rozwiązanie dla Twojego biznesu. Jak wygląda proces powstawiania strony i ile kosztuje? Cena utworzenia strony internetowej opartej na WordPress składa się z kilku części wymienionych poniżej: Cena domeny Cena domeny uzależniona jest od nazwy średnio jest to ~100 PLN/rocznie wg. https://hosting. linux. pl/domeny-cennik. html Hosting Kosztu hostingu ~100 PLN/rocznie wg https://hosting. linux. pl/index. html Zakup wtyczek (plug-inów) Przy budowie nowej strony lub przebudowie starej polecam zakup jednego z najlepszych template-ów do WordPress koszt jednorazowy ~69$ + VAT (template jeden z pierwszej dziesiątki najlepszych). Istnieją też dobre bezpłatne rozwiązania. Jeżeli warto będzie coś dokupić to raczej wyniknie to z kontekstu prac i potrzeb biznesu klienta. Konfiguracja backupu W podstawowej usłudze zapewniam konfigurację backupu strony. Zapewnia to bezpieczeństwo pracy i możliwość odtworzenia w... --- - Published: 2018-05-14 - Modified: 2024-09-07 - URL: https://ultimasolution.pl/db-engines-ranking-popularity-ranking-of-database-management-systems/ - Categories: plsql, sql - Tags: database, sql The DB-Engines Ranking ranks database management systems according to their popularity. The ranking is updated monthly. Read more about the method of calculating the scores. https://db-engines. com/en/ranking Rank DBMS Database Model Score Sep 2024 Aug 2024 Sep 2023 Sep 2024 Aug 2024 Sep 2023 1. 1. 1. Oracle Relational, Multi-model 1286. 59 +28. 11 +45. 72 2. 2. 2. MySQL Relational, Multi-model 1029. 49 +2. 63 -82. 00 3. 3. 3. Microsoft SQL Server Relational, Multi-model 807. 76 -7. 41 -94. 45 4. 4. 4. PostgreSQL Relational, Multi-model 644. 36 +6. 97 +23. 61 5. 5. 5. MongoDB Document, Multi-model 410. 24 -10. 74 -29. 18 6. 6. 6. Redis Key-value, Multi-model 149. 43 -3. 28 -14. 26 7. 7. 11. Snowflake Relational 133. 72 -2. 25 +12. 83 8. 8. 7. Elasticsearch Search engine, Multi-model 128. 79 -1. 04 -10. 20 9. 9. 8. IBM Db2 Relational, Multi-model 123. 05 +0. 04 -13. 67 10. 10. 9. SQLite Relational 103. 35 -1. 44 -25. 85 Source: DB-Engines Ranking - popularity ranking of database management systems --- - Published: 2018-04-06 - Modified: 2020-08-21 - URL: https://ultimasolution.pl/no-new-new-raw-pointers-removed-from-c/ - Categories: c - Tags: c++ Two weeks ago, the ISO C++ standard meeting took place in Jacksonville. Today I want to make a short detour and write about the revolutionary decision that was made in the Jacksonville meeting. Additionally, I refer to the Will no Longer Have Pointers by Fluent C++. The standard committee decided that pointers will be deprecated in C++20 and will with very high probability removed in C++23. To be honest, what seems like a revolution is only the last step in a long evolution. First, let me explain the big picture. The evolution of pointers in C++ Pointers are part of C++ since the first beginning. We got them from C. From the first beginning there was always the tendency in C++ to make the handling with pointers more type-safe without paying the extra cost. With C++98 we got std::auto_ptr to express exclusive ownership. But std::auto_ptr had a big issue. When you copy an std::auto_ptr the resource will be moved. What looks like a copy operation was actually a move operation. The graphic shows the surprising behaviour of an std::auto_ptr. This was extremely bad and the reason for a lot of serious bugs; therefore, we got std::unique_ptr with C++11 and std::auto_ptr was deprecated in C++11 and finally removed in C++17. Additionally, we got std::shared_ptr and std::weak_ptr in C++11 for handling shared ownership. You can not copy but move an std::unique_ptr and if you copy or assign an std::shared_ptr, the internal reference counter will be increased. Have a look here: Since C++11... --- - Published: 2018-04-06 - Modified: 2023-11-01 - URL: https://ultimasolution.pl/how-you-spend-your-morning-determines-your-success-in-life/ - Categories: life - Tags: life, quote I didn’t understand how important my morning was at the beginning of my mission. But it quickly became very apparent. As a missionary, the first several hours of the day are dedicated to getting ready, studying, and planning. After a few months in “the mission field,” I noticed that most missionaries dragged themselves out of bed, and dragged themselves through their studies. While serving a humanitarian and ecclesiastical mission at the age of 20, I learned potentially the most important lesson of my life. How you spend your morning determines your success in life. How you spend your morning determines who you will become. How you spend your morning determines whether you become world-class at something, or remain merely average. How you spend your morning is the difference between making tens of millions of dollars and making less than 100 grand. How you spend your morning determines how well you: think strategize prioritize spend your time choose your friends choose your lover choose your career perform in your work influence the world I didn’t understand how important my morning was at the beginning of my mission. But it quickly became very apparent. As a missionary, the first several hours of the day are dedicated to getting ready, studying, and planning. After a few months in “the mission field,” I noticed that most missionaries dragged themselves out of bed, and dragged themselves through their studies. My experience was different. For the first time in my life, I experienced the power of learning. I felt the nourishment of feeding my mind and soul. To quote Oliver Wendell Holmes, Jr. : “A mind that is stretched by a new experience can never go back to its old dimensions. ” I started waking up earlier than prescribed to read more and more. Rather than reading one hour each morning as recommended, I was reading three or... --- - Published: 2018-03-03 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/budda-nie-byl-masochista/ - Categories: life - Tags: quote Mandżuśri, figlarny uczeń Siddharthy, poddał próbę mnicha medytującego nad brzydotą, przemieniając się w piękną nimfę. Mnich, choć długo opierał się pokusie, w końcu uległ. Gdy odkrył, że nimfa była iluzją, Mandżuśri wyjaśnił, że zarówno piękno, jak i brzydota to jedynie koncepcje, które zniewalają umysł. Siddhartha miał świeckiego ucznia, wojownika o imieniu Mandżuśri, znanego dowcipnisia i figlarza. Jednym ze współtowarzyszy Mandżuśriego był pewien bardzo sumienny i szanowany mnich, znany z „medytowania nad brzydotą” – metody zalecanej tym, których przepełnia pożądanie i namiętność. Medytacja tego rodzaju polega na wyobrażaniu sobie, że wszystkie istoty składają się z żył, chrząstek, jelit i tak dalej. Mandżuśri, wykorzystując swoje nadprzyrodzone moce, postanowił poddać sumiennego mnicha próbie. Zmienił się w piękną nimfę i pojawił przed medytującym, aby go uwieść. Przez pewien czas poczciwy mnich pozostawał niewzruszony, trwając w całkowitym bezruchu. Jednak powab Mandżuśrego okazał się nieodparty i mnich powoli zaczął ulegać. Był bardzo zaskoczony, ponieważ w ciągu wielu lat medytacji z powodzeniem opierał się najpiękniejszym kobietom w okolicy. W końcu zdruzgotany i rozczarowany sobą, umknął. Nimfa rzuciła się w pogoń i ścigała go, aż wyczerpany ucieczką padł na ziemię. Kiedy zaczęła się zbliżać, mnich pomyślał: „Już po mnie. Ta piękna dziewczyna zaraz mnie porwie w ramiona”. Zacisnął powieki i czekał, ale nic się nie wydarzyło. Gdy wreszcie otworzył oczy, urodziwa nimfa rozpadła się na kawałki, a na jej miejscu ukazał się roześmiany Mandżuśri. „Myślenie, że ktoś jest piękny, to tylko koncepcja – powiedział. – Lgnięcie do tej koncepcji ogranicza cię, krępuje, więzi. Ale jeśli myślisz, że ktoś jest brzydki, to także tylko koncepcja, która cię zniewala”. Source: Dzongsar Kjence Rinpocze: Budda nie był masochistą – Portal Buddyjski --- - Published: 2018-03-02 - Modified: 2020-08-21 - URL: https://ultimasolution.pl/how-to-import-from-excel-to-a-new-oracle-table-with-sql-developer-thatjeffsmith/ - Categories: sql - Tags: sql How to Import from Excel to a New Oracle Table with SQL Developer Source: How to Import from Excel to a New Oracle Table with SQL Developer | ThatJeffSmith --- - Published: 2018-01-14 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/js-stack-from-scratchreadme-md-at-master-%c2%b7-verekiajs-stack-from-scratch-%c2%b7-github/ - Categories: js - Tags: node, stack Welcome to my modern JavaScript stack tutorial: JavaScript Stack from Scratch. This is the V2 of the tutorial, major changes happened since the 2016 release. Check the Change Log! This is a straight-to-the-point guide to assembling a JavaScript stack. It requires some general programming knowledge, and JavaScript basics. It focuses on wiring tools together and giving you the simplest possible example for each tool. You can see this tutorial as a way to write your own boilerplate from scratch. Since the goal of this tutorial is to assemble various tools, I do not go into details about how these tools work individually. Refer to their documentation or find other tutorials if you want to acquire deeper knowledge in them. You don't need to use this entire stack if you build a simple web page with a few JS interactions of course (a combination of Browserify/Webpack + Babel + jQuery is enough to be able to write ES6 code in different files), but if you want to build a web app that scales, and need help setting things up, this tutorial will work great for you. A big chunk of the stack described in this tutorial uses React. If you are beginning and just want to learn React, create-react-app will get you up and running with a React environment very quickly with a pre-made configuration. I would for instance recommend this approach to someone who arrives in a team that's using React and needs to catch up with a learning playground.... --- - Published: 2017-12-17 - Modified: 2024-09-23 - URL: https://ultimasolution.pl/dla-zwyklego-czlowieka-smierc-jest-czyms-realnym-i-moze-przyjsc-w-kazdej-chwili/ - Categories: life - Tags: quote Dla zwykłego człowieka śmierć jest czymś realnym i może przyjść w każdej chwili, bez ostrzeżenia. Marnowanie swego cennego ludzkiego życia w trakcie banalnych zajęć jest tragedią. Jedynie praktyka prowadzi do własnego urzeczywistnienia i wyłącznie poprzez swą własną realizację można ostatecznie pomóc innym, przejawiając zdolności prowadzenia ich tak, aby sami osiągnęli taki sam stan. Jakakolwiek pomoc materialna, którą możemy ofiarować, jest zawsze tylko czymś prowizorycznym. Aby móc pomagać innym, trzeba zacząć od pomagania samemu sobie, bez względu na to, jak paradoksalnie może to brzmieć. Aby doliczyć do miliona, trzeba zacząć od jedynki. Tak samo, aby pomóc społeczeństwu, trzeba zacząć od pracy nad samym sobą. Każda jednostka powinna w pełni ponosić odpowiedzialność za siebie, co można osiągnąć wyłącznie poprzez pracę nad poszerzeniem własnej świadomości, aby stać się w coraz pełniejszym stopniu uważnym, by coraz bardziej być mistrzem samego siebie. ― Kryształ i ścieżka światła - Namkhai Norbu Rinpocze --- - Published: 2017-12-11 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/sql-conversion-national-characters-to-ascii-without-spaces/ - Categories: sql - Tags: plsql, replace, sql Conversion national characters to ASCII with out spaces in Oracle 11g+ SELECT REPLACE( CONVERT(LOCATION_CITY_PL, 'US7ASCII'), ' ', '' ), '-', '' ) FROM CITIES; This query cleans up Polish city names stored in the LOCATION_CITY_PL column of the CITIES table by: CONVERT(... , 'US7ASCII'): Converts characters from the database character set (e. g. , UTF8) to the US7ASCII character set. This strips non-ASCII characters — e. g. , ę becomes e, ł becomes l, etc. Useful for generating ASCII-only versions of names. REPLACE(... , ' ', ''): Removes spaces from the string. REPLACE(... , '-', ''): Removes hyphens from the string. Example: Suppose you have: LOCATION_CITY_PL Łódź Zielona Góra Bielsko-Biała --- - Published: 2017-12-10 - Modified: 2020-05-10 - URL: https://ultimasolution.pl/sql-owa_util-get_procedure-and-plsql_unit/ - Categories: sql - Tags: oracle, plsql In 10g and 11g I use the "owa_util. get_procedure" function. I normally use this in packages as it will also return the name of an internal procedure or function as part of the package name, i. e. (package_name). (procedure name). I use this to provide a generic EXCEPTION template for identifying where an exception occurred. CREATE OR REPLACE procedure some_procedure is v_procedure_name varchar2(32); begin v_procedure_name := owa_util. get_procedure; end; CREATE OR REPLACE PACKAGE some_package AS FUNCTION v_function_name RETURN DATE; END; / CREATE OR REPLACE PACKAGE BODY some_package AS FUNCTION v_function_name RETURN DATE IS BEGIN RETURN SYSDATE; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT. PUT_LINE('ERROR IN '||owa_util. get_procedure); DBMS_OUTPUT. PUT_LINE(SQLERRM); END; END; / Source: https://stackoverflow. com/questions/286549/find-out-name-of-pl-sql-procedure#286569 alter session set plscope_settings='identifiers:all' / Session altered. SQL> set serverout on SQL> create or replace package pkg as procedure p1; procedure p2; end pkg; / Package created. SQL> create or replace package body pkg as procedure get_scope (obj varchar2, line int) as begin for c in (select rpad (lpad (' ', 2 * (level - 1)) || name, 20, '. ') || ' ' || rpad (type, 20) || rpad (usage, 20) identifier_usage_contexts from user_identifiers t where level ! = 1 start with line = get_scope. line and object_name = obj connect by usage_id = prior usage_context_id) loop dbms_output. put_line (c. identifier_usage_contexts); end loop; end get_scope; procedure p1 as begin null; end p1; procedure p2 as begin get_scope ($$plsql_unit, $$plsql_line); end p2; end pkg; Return information about witch module call this code. CREATE OR REPLACE FUNCTION MIBP_OWNER.... --- - Published: 2017-12-09 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/oracle-sql-lag-oracle-11g-is-analytic-function/ - Categories: plsql, sql - Tags: oracle, plsql, sql Oracle 11g introduces the LAG() function, a powerful analytic tool that allows you to access data from previous rows without needing a self-join. The LAG() function retrieves data from a specific offset before the current row, making it ideal for tasks like comparing consecutive entries. Very usefully new features in Oracle 11g is analytic Oracle SQL function LAG. Oracle LAG is an analytic function that allows you to access the row at a given offset before the current row without using a self-join. The following illustrates the syntax of the LAG function: LAG(expression ) OVER ( order_by_clause ) SQL query LAG This code find change in address post code in journal table: SELECT * FROM ( SELECT t1. SITE_NUMBER ,t1. JN_DATETIME ,t1. ADR_POSTCODE ,LAG (t1. ADR_POSTCODE, 1) OVER (PARTITION BY t1. SITE_NUMBER ORDER BY t1. jn_datetime) AS PREV_ADR_POSTCODE FROM t1 ) WHERE adr_postcode = '00-001' AND PREV_ADR_POSTCODE '00-001' AND PREV_ADR_POSTCODE '00-000' ORDER BY SITE_NUMBER; Test query data CREATE TABLE T1 ( SITE_NUMBER VARCHAR2(16 BYTE), JN_DATETIME DATE, ADR_POSTCODE VARCHAR2(20 BYTE) ) LOGGING NOCOMPRESS MONITORING;" message="" highlight="" provider="manual"/][pastacode lang="sql" manual="SET DEFINE OFF; Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('08/01/2017 15:01:31', 'MM/DD/YYYY HH24:MI:SS'), '00-001'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20002', TO_DATE('04/20/2017 11:59:29', 'MM/DD/YYYY HH24:MI:SS'), '00-002'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('06/15/2017 04:02:41', 'MM/DD/YYYY HH24:MI:SS'), '00-003'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20004', TO_DATE('06/20/2017 20:15:13', 'MM/DD/YYYY HH24:MI:SS'), '00-001'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('12/10/1929 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), '00-001'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('09/25/2091 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), '00-003'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('09/14/1914 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), '00-001'); Insert into KPREISKORN. T1 (SITE_NUMBER, JN_DATETIME, ADR_POSTCODE) Values ('20001', TO_DATE('03/25/1911 00:00:00', 'MM/DD/YYYY HH24:MI:SS'), '00-001'); Insert into KPREISKORN.... --- - Published: 2017-12-03 - Modified: 2023-10-24 - URL: https://ultimasolution.pl/python-rename-special-characters-in-filename/ - Categories: python Problem   When upload files to One Drive i have problem with files contain special characters. Below you found Python script witch remove any special characters form filenames. Change   lv_path = "D:Netbeans Projects"   and enjoy!   Solution   #! /usr/bin/env python # # wychwytywanie i zmiana nazwy plików # import os import string import re import sys delchars = ''. join(c for c in map(chr, range(256)) if not c. isalnum) # paths = (os. path. join(root, filename) # for root, _, filenames in os. walk('. ') # for filename in filenames) # print(paths) lv_path = "D:Netbeans Projects" paths = (os. path. join(root, filename) for root, _, filenames in os. walk(lv_path) for filename in filenames) print ("Search at " + lv_path) for path in paths: newname = path. replace('#', '') newname = newname. replace('%', '') newname = newname. replace('*', '') newname = newname. replace('', '') newname = newname. replace('*', '') newname = newname. replace('? ', '') newname = newname. replace(', '') #newname = newname. replace('! ', '') #newname = path. replace(''', '-') newname = newname. replace('"', '') newname = newname. replace(''', '') newname = path. replace('Å', 'ś') newname = path. replace('Å', 'ń') #newname = path. translate(str. maketrans("","",delchars)) #re. sub('', '_', newname) if newname ! = path: # print(path) print(os. path. dirname(path. encode('utf8'). decode(sys. stdout. encoding)) + "t" + os. path. basename(path. encode('utf8'). decode(sys. stdout. encoding)) + "ttt -> " + os. path. basename(newname. encode('utf8'). decode(sys. stdout. encoding))) os. rename(path, newname)   Source(s)   http://www. mtu. edu/umc/services/digital/writing/characters-avoid/ https://serverfault. com/questions/348482/how-to-remove-invalid-characters-from-filenames --- - Published: 2017-12-01 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/plsql-errors-ora-04061-existing-state-of-package-has-been-invalidated/ - Categories: plsql, sql - Tags: existing state of packages has been discarded, ORA-04068, oracle, plsql, sql PL/SQL Errors: ORA-04061: existing state of package has been invalidated. If so, that's because your package is stateful: The values of the variables, constants, and cursors that a package declares (in either its specification or body) comprise its package state. When you recompile the state is lost: If the body of an instantiated, stateful package is recompiled (either explicitly, with the "ALTER PACKAGE Statement", or implicitly), the next invocation of a subprogram in the package causes Oracle Database to discard the existing package state and raise the exception ORA-04068. After PL/SQL raises the exception, a reference to the package causes Oracle Database to re-instantiate the package, which re-initializes it... You can't avoid this if your package has state. I think it's fairly rare to really need a package to be stateful though, so you should revisit anything you have declared in the package, but outside a function or procedure, to see if it's really needed at that level. Since you're on 10g though, that includes constants, not just variables and cursors. I suspect you're only reporting the last error in a stack like this: ORA-04068: existing state of packages has been discarded ORA-04061: existing state of package body "schema. package" has been invalidated ORA-04065: not executed, altered or dropped package body "schema. package" ORA-06508: PL/SQL: could not find program unit being called: "schema. package" If so, that's because your package is stateful: The values of the variables, constants, and cursors that a package declares (in either its specification or body) comprise its package state. If a PL/SQL package declares at least one variable, constant, or cursor, then the package is stateful; otherwise, it is stateless. When you recompile the state is lost: If the body of an instantiated, stateful package is recompiled (either explicitly, with the "ALTER PACKAGE Statement", or implicitly), the next invocation of a subprogram in the package causes Oracle Database to discard the existing package state and raise the exception ORA-04068. After PL/SQL raises the exception, a reference to the package causes Oracle Database to re-instantiate the package, which re-initializes it... You can't avoid this if your package has state. I think it's fairly rare to really need a package to be stateful though, so you should revisit anything you have declared in the package, but outside a function or procedure, to see if it's really needed at that level. Since you're on 10g though, that includes constants, not just variables and cursors. But the last paragraph from the quoted documentation means that the next time you reference... --- - Published: 2017-11-18 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/plsql-not_data_found-and-cursors/ - Categories: plsql, sql - Tags: data, plsql, sql In PL/SQL, one common problem developers encounter is determining whether a specific record exists in another table. There are various ways to address this, using implicit or explicit cursors, exception handling, or even more advanced structures like REF CURSOR. Let's review some examples to manage this problem effectively. Here we are common problem in PLSQL. We try find answer for one common question in programing databases. Is the specyfic record exist in other table or not exist? Some examples below show how to menage this problem: DECLARE VAR_SUPP_NM VARCHAR2(100); VAR_SUPP_ID NUMBER := 1; WHILE_VAR CHAR := 'Y'; BEGIN SELECT SUPP_NM INTO VAR_SUPP_NM FROM TEST. SUPPLIER WHERE SUPP_ID = VAR_SUPP_ID; DBMS_OUTPUT. PUT_LINE('DATA FOUND'); exception when no_data_found then -- here some code when data ont exist DBMS_OUTPUT. PUT_LINE('SQL DATA NOT FOUND'); END; / In line 11 and 14 we have place to insert own code. Other solution we found when we use define explicit cursor: CREATE FUNCTION f_get_name (ip_emp_id IN NUMBER) RETURN VARCHAR2 AS CURSOR c IS SELECT ename FROM emp WHERE emp_id = f_get_name. ip_emp_id; lv_ename emp. ename%TYPE; BEGIN OPEN c; FETCH c INTO lv_ename; IF (SQL%NOTFOUND) THEN RAISE NO_DATA_FOUND; ENDIF; FETCH c INTO lv_ename; IF (SQL%FOUND) THEN RAISE TOO_MANY_ROWS; ENDIF; CLOSE c; RETURN lv_ename; END; / CREATE OR REPLACE PROCEDURE refresh_store_feed AS TYPE prod_array IS TABLE OF store_products%ROWTYPE INDEX BY BINARY_INTEGER; l_prod prod_array; CURSOR c IS SELECT product FROM listed_products@some_remote_site; BEGIN OPEN C; LOOP FETCH C BULK COLLECT INTO l_prod LIMIT 100; FOR i IN 1 . . l_csi. COUNT LOOP /* ... do some procedural code here that cannot be done in SQL to l_csi(i) ... */ END LOOP; FORALL i IN 1 . . l_csi. COUNT INSERT INTO store_products (product) VALUES (l_prod(i)); EXIT WHEN c%NOTFOUND; END LOOP; CLOSE C; END; / REF Cursors in Brief Though... --- - Published: 2017-09-14 - Modified: 2024-09-29 - URL: https://ultimasolution.pl/sql-search-for-a-particular-string-in-oracle-clob-column/ - Categories: sql - Tags: data, database, example, find, oracle, plsql, select, sql, string, tables Clobs Not many tables demand the use of CLOBs (Character Large Objects). CLOB data type columns can store up to 4 GB of text. When designing a new application, developers face a dilemma – I need a column where I need to store a large block of text. Should I use multiple VARCHAR2 columns or CLOB? ×VARCHAR2 Variable-length character string having maximum length size bytes or characters. You must specify size for VARCHAR2. Minimum size is 1 byte or 1 character. Maximum size is: 32767 bytes or characters if MAX_STRING_SIZE=EXTENDED or 4000 bytes or characters if MAX_STRING_SIZE=STANDARD. Close The decision to use VARCHAR2 instead of CLOB is usually driven by the fear of the unknown. One should always use CLOB when it comes to deciding about multiple VARCHAR2 columns vs. CLOB to store a single logical piece of textual data. Example use string in Oracle CLOB column: create table aTable( id number, aClobColumn clob ); insert into aTable values (1,'value' ); insert into aTable values (1,'values are like this' ); select * from aTable where dbms_lob. substr( aClobColumn , 4000, 1 )='value'; Source, try it online: http://sqlfiddle. com/#! 4/1878f6/164 Accessing a CLOB as a VARCHAR2 in PL/SQL The following example illustrates the way CLOB manage. Length of CLOB declare myStoryBuf VARCHAR2(4001); BEGIN SELECT ad_sourcetext INTO myStoryBuf FROM print_media WHERE ad_id = 12001; -- Display Story by printing myStoryBuf directly END; / Assigning a CLOB to a VARCHAR2 in PL/SQL declare myLOB CLOB; BEGIN SELECT 'ABCDE' INTO myLOB FROM print_media WHERE... --- - Published: 2017-09-01 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/sql-corner-remove-duplicated-number/ - Categories: sql - Tags: data, find, html, oracle, regex, sql Problem Last time I have a problem with duplicated number in post address (column). Our callback interfaces write to us many error_number. Bad formatted duplicated numbers. So first I have to find where is and how many this number are. How remove duplicated in field number? Bad numbers: CREATE TABLE locations ( site_number INT, ADR_STREET_NO VARCHAR (7) ); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (2, '22 22'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (1, '1 111'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (3, '3 3'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (3, '43 645'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (3, '72 85'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (3, '23 95'); INSERT INTO locations (site_number, ADR_STREET_NO) VALUES (3, '711 711'); SITE_NUMBER ADR_STREET_NO 2 22 22 1 1 111 3 3 3 3 43 645 3 72 85 3 23 95 3 711 711 How to solve the problem? SELECT l. site_number, l. ADR_STREET_NO, REGEXP_REPLACE (l. ADR_STREET_NO, '(+)( \1)+', '\1') FROM mibp_owner. locations l WHERE REGEXP_LIKE (ADR_STREET_NO, '\d \d'); -- UPDATE mibp_owner. locations l SET l. ADR_STREET_NO = REGEXP_REPLACE (l. ADR_STREET_NO, '(+)( \1)+', '\1') WHERE REGEXP_LIKE (ADR_STREET_NO, '\d \d'); ITE_NUMBER ADR_STREET_NO REGEXP_REPLACE(L. ADR_STREET_NO,'(+)(\1)+','\1') 2 22 22 22 1 1 111 111 3 3 3 3 3 43 645 43 645 3 72 85 72 85 3 23 95 23 95 3 711 711 711 After update: SELECT l. site_number, l. ADR_STREET_NO, REGEXP_REPLACE (l. ADR_STREET_NO, '(+)( \1)+', '\1') FROM locations l WHERE REGEXP_LIKE (ADR_STREET_NO, '\d \d'); SITE_NUMBER ADR_STREET_NO REGEXP_REPLACE(L. ADR_STREET_NO,'(+)(\1)+','\1') 3... --- - Published: 2017-08-10 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/oracle-10gr2-conditional-plsql-compilation/ - Categories: plsql - Tags: oracle, plsql, sql Oracle Database 10g Release 2 delivers a new PL/SQL language feature: conditional compilation. The feature is elegant and easy to understand. Oracle Database 10g Release 2 delivers a new PL/SQL language feature: conditional compilation. The feature is elegant and easy to understand. There are three kinds of PL/SQL conditional compilation construct: the selection directive, the inquiry directive, and the error directive. Code_1 uses all of these. The following sections discuss them in detail and suggest some best-practice principles for their use. The selection directive The motivating requirement for conditional compilation is that it must select between alternative fragments of source text at compilation time. PL/SQL conditional compilation satisfies this requirement with the selection directive. Code_2 illustrates this. Code_2 relies on the package CC_Control: Code_2 $if CC_Control. Trace_Level > 0 $then Print(Sparse_Collection. Count); $if CC_Control. Trace_Level > 1 $then declare Idx Idx_t := Sparse_Collection. First; begin while Idx is not null loop Print(Idx||' '||Sparse_Collection(Idx)); Idx := Sparse_Collection. Next(Idx); end loop; end; $end $end package CC_Control is Trace_Level constant pls_integer := 2; end CC_Control; package CC The selection directive must test a so-called static boolean expression. The rules that such an expression must satisfy are defined in the PL/SQL User's Guide and Reference book; the evaluation of a static expression must always give the same result unless anything it depends on — a static package constant or the result of an inquiry directive (see The inquiry directive on page 9) — has been deliberately changed. A static boolean expression must be composed using so-called static package constants, literals, or inquiry directives. Thus, for example, d in the following is not a static package... --- - Published: 2016-12-28 - Modified: 2023-10-15 - URL: https://ultimasolution.pl/java-ciag-fibonacciego/ - Categories: java - Tags: exercises Zadanie Utwórz rekurencyjna metode obliczajaca ciag Fibonacciego, zdefiniowany dla elementu fibonacci(n) jako sume fibonacci(n-1) + fibonacci(n-2) przy załozeniu, ze fibonacci(1) i fibonacci(2) maja odpowiednio wartosci 1 i 2. Ciąg Fibonaciego In mathematics, the Fibonacci numbers are the numbers in the following integer sequence, called the Fibonacci sequence, and characterized by the fact that every number after the first two is the sum of the two preceding ones: 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 , 55 , 89 , 144 , ... Often, especially in modern usage, the sequence is extended by one more initial term: 0 , 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 , 55 , 89 , 144 , ...   The Fibonacci spiral: an approximation of the golden spiral created by drawing circular arcs connecting the opposite corners of squares in the Fibonacci tiling; this one uses squares of sizes 1, 1, 2, 3, 5, 8, 13, 21, and 34. By definition, the first two numbers in the Fibonacci sequence are either 1 and 1, or 0 and 1, depending on the chosen starting point of the sequence, and each subsequent number is the sum of the previous two. In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence relation with seed values or The Fibonacci sequence is named after Italian mathematician Leonardo of Pisa, known as Fibonacci. His 1202 book Liber... --- - Published: 2016-12-05 - Modified: 2024-09-08 - URL: https://ultimasolution.pl/plsql-loop-inexed-by-letters/ - Categories: sql - Tags: oracle, plsql, sql Loop indexed by letters declare k_ascii_a constant pls_integer := ascii('A'); l_index varchar2(1); begin for i in 1 . . 10 loop -- Change 10 for whatever is your limit l_index := chr(k_ascii_A + i - 1); dbms_output. put_line('Index is ' || l_index); end loop; end; Run In this code: k_ascii_a is a constant set to the ASCII value of 'A'. The CHR function converts an ASCII value back to its corresponding character. DBMS_OUTPUT. PUT_LINE prints each letter. Using a Predefined String of Characters: This method avoids issues with character sets by directly using a string of characters. It's more portable across different character sets. declare k_index_char constant varchar2(26) := 'ABCDEF... Z'; l_index varchar2(1); begin for i in 1 . . 10 loop -- Change 10 for whatever is your limit l_index := substr(k_index_char, i, 1); dbms_output. put_line('Index is ' || l_index); end loop; end; In this code: k_index_char contains the alphabetic characters from A to Z. SUBSTR extracts each character based on the loop index. DBMS_OUTPUT. PUT_LINE prints each letter. Considerations Portability: The second method is preferred for better portability across different character sets since it relies on predefined character strings rather than ASCII values. Flexibility: If you need to work with character sets that include more than just standard ASCII letters, you may need to adjust the k_index_char string to include the relevant characters. These approaches help in scenarios where you need to loop through letters for indexing or other purposes. --- - Published: 2016-11-10 - Modified: 2023-10-27 - URL: https://ultimasolution.pl/what-are-the-best-programming-fonts/ - Categories: tool The choice the font in Firefox or Sulbimetext it is always hard decision... . As much as choice of a font is subjective there are important criteria to consider when choosing a programming font. The characters should be clear, easy to read, in cases of clashing ones such as 1, l, i or O, o, 0 easily distinguishable, differences between different kinds of brackets, quotes and parentheses should be clear, punctuation should be emphasized and they shouldn't break up words or sentences due to uneven character widths. There are two ways fonts are drawn - as bitmaps or as vectors. Vector fonts allow more efficient scaling, but for screens with resolution below 720p it might be worth considering bitmap fonts as they are generally more legible at smaller sizes on low-resolution screens. Source: What are the best programming fonts? - Slant --- - Published: 2016-10-24 - Modified: 2024-02-24 - URL: https://ultimasolution.pl/regex-never-ending-story/ - Categories: js, python, sql, tool - Tags: data, regex, regexp, sql It is example of use RegEx to prepare SQL data for SELECT/UPDATE operation. Regex is an essential tool in every developer's tool-bag. It helps you perform a search in strings. Regex is used everywhere from compilers to word processors. Problem with SQL IN(... ) It is an example to use Regexp to prepare SQL data for SELECT/UPDATE operation. Regexp: /^. */gm and substitution: '�', Explanation ^ asserts position at start of a line . * matches any character (except for line terminators) * Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy) Global pattern flags >g modifier: global. All matches (don't return after first match) m modifier: multi line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string) Example how to use it This example simple replaces MBS to ,'MBS'. For example, when you have many selected values in SQL (in one column) and need to convert it to running query. SELECT * FROM TABLE WHERE ID IN( AAA AAB AAC ... ) Convert it to: SELECT * FROM TABLE WHERE ID IN( 'AAA', 'AAB', 'AAC') Example in practice: https://regex101. com/r/34repv/1 or https://extendsclass. com/regex-tester. html#MTkxMTI1MTNkZTM5MmRjYWY1 solution Try to find playlist in YouTube URL (? :https? :\/\/)? (? :youtu\. be\/|(? :www\. |m\. )? youtube\. com\/(? :playlist|list|embed)(? :\. php)? (? :\? . *list=|\/))(+) Test this example https://regex101. com/r/p8x4GU/2 Good tools for testing regex https://regex101. com/ and here is this example: https://regex101. com/r/34repv/1 https://extendsclass. com/regex-tester. html#MTkxMTI1MTNkZTM5MmRjYWY1 (very good graphics explanation) https://pythonium. net/regex https://regexr. com/ https://rustexp. lpil. uk/ How is run... --- - Published: 2016-09-24 - Modified: 2023-09-18 - URL: https://ultimasolution.pl/sql-corner-7-kind-of-sql-joins-including-inner-join-left-join-right-join-full-join/ - Categories: sql - Tags: oracle, sql Infographic of the 7 kind of SQL Joins. Including : INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, with or without the intersect. Very useful for web developer. Source : http://sql. sh #SQL #JOIN Source: Pinterest http://sql. sh/2401-sql-join-infographieOther sources about JOIN https://docs. oracle. com/cd/B28359_01/server. 111/b28286/queries006. htm https://www. techonthenet. com/oracle/joins. php - This Oracle tutorial explains how to use JOINS (inner and outer) in Oracle with syntax, visual illustrations, and examples. Best place to try learn SQL by examples -> http://www. sqlfiddle. com/#! 2/15c89/2 or https://www. db-fiddle. com/ --- - Published: 2016-04-18 - Modified: 2023-09-20 - URL: https://ultimasolution.pl/java-suma-kolejnych-liczb-calkowitych-od-5-do-1000/ - Categories: java - Tags: class, exercises Zadanie 1. Suma kolejnych liczb całkowitych od 5 do 1000 Sumowanie – operacja dodawania ciągu liczb, której wynikiem jest suma. Jeśli liczby są dodawane kolejno od lewej do prawej to pośrednie wyniki nazywa się sumami częściowymi lub cząstkowymi. Sumowane liczby (zwane składnikami) mogą być całkowite, rzeczywiste lub zespolone. Oprócz liczb sumowaniu mogą podlegać również inne wielkości: wektory, macierze, wielomiany, lub ogólnie, elementy grupy addytywnej (a nawet monoid). Dla ciągów o skończonej liczbie takich elementów sumowanie zawsze zwraca dobrze określoną sumę. Zadanie 1. Suma kolejnych liczb całkowitych od 5 do 1000 Sumowanie – operacja dodawania ciągu liczb, której wynikiem jest suma. Jeśli liczby są dodawane kolejno od lewej do prawej to pośrednie wyniki nazywa się sumami częściowymi lub cząstkowymi. Sumowane liczby (zwane składnikami) mogą być całkowite, rzeczywiste lub zespolone. Oprócz liczb sumowaniu mogą podlegać również inne wielkości: wektory, macierze, wielomiany, lub ogólnie, elementy grupy addytywnej (a nawet monoid). Dla ciągów o skończonej liczbie takich elementów sumowanie zawsze zwraca dobrze określoną sumę. Sumowanie ciągów nieskończonych nie zawsze jest możliwe, a kiedy wartość nieskończonego sumowania może być podana, to obejmuje ona więcej niż tylko zwykłą operację dodawania, mianowicie pojęcie granicy. Sumowanie nieskończonych ciągów tworzy konstrukcję zwaną szeregiem. Innym pojęciem obejmującym granice skończonych sum jest całka. Pojęcie sumowania nabiera szczególnego znaczenia w powiązaniu z ekstrapolacją w kontekście szeregów rozbieżnych. Sumowanie ciągu to wyrażenie, którego wartością jest suma wszystkich elementów ciągu. W podanym przykładzie to 1 + 2 + 4 + 2 = 9. Ponieważ dodawanie jest łączne, wynik nie zależy od kolejności wykonywanych działań, na przykład (1 + 2) + (4 + 2) lub 1 + ((2 + 4) + 2) daje w wyniku 9, stąd zazwyczaj pomijane są nawiasy w przypadku wielokrotnego dodawania. Dodawanie jest ponadto przemienne, więc permutacja wyrazów skończonego ciągu również nie zmienia jego sumy (w przypadku ciągów nieskończonych ta właściwość nie zawsze jest prawdziwa; zobacz twierdzenie Riemanna o szeregach warunkowo zbieżnych i kryteria zbieżności szeregów). Nie ma specjalnego wyróżnionego zapisu sumowania jawnie podanych ciągów gdyż odpowiadające mu wyrażenie wielokrotnego dodawania... --- - Published: 2016-02-04 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/unique-session-id/ - Categories: sql - Tags: oracle, plsql, sql The UNIQUE_SESSION_ID function returns a character string unique to the session among all sessions currently connected to the database. The return string can be up to 24 bytes in length. Multiple calls to the function from the same session will always return the same string. The program header follows: FUNCTION DBMS_SESSION. UNIQUE_SESSION_ID RETURN VARCHAR2; Notes UNIQUE_SESSION_ID is functionally identical to the DBMS_PIPE. UNIQUE_SESSION_NAME function; however, their return values are not identical. Be very careful not to write code that assumes that these two functions are equivalent. The UNIQUE_SESSION_ID function does not raise any exceptions. Example To display the value of the unique id for the current session, specify the following: DECLARE my_unique_id VARCHAR2(30); BEGIN my_unique_id := DBMS_SESSION. UNIQUE_SESSION_ID; DBMS_OUTPUT. PUT_LINE('UNIQUE ID: '||my_unique_id); END; An example of output from executing the preceding PL/SQL block follows: UNIQUE ID: F000E4020000 Source: https://www. toadworld. com/platforms/oracle/w/wiki/3246. dbms-session-unique-session-id When you have problem receive information about session in Oracle PLSQL database for example purposes journalling. Look bellow on SQLs witch rewrite two or more rows: SELECT * FROM v$session s WHERE username IS NOT NULL AND s. AUDSID = SYS_CONTEXT ('userenv', 'sessionid') ORDER BY username, osuser; You need add two condition to receive one row. WHERE username IS NOT NULL AND s. AUDSID = SYS_CONTEXT ('userenv', 'sessionid') AND S. SID = SYS_CONTEXT ('userenv', 'sid') Final query return unique session row: SELECT * FROM v$session s WHERE username IS NOT NULL AND s. AUDSID = SYS_CONTEXT ('userenv', 'sessionid') AND S. SID = SYS_CONTEXT ('userenv', 'sid') ORDER BY username,... --- - Published: 2016-01-12 - Modified: 2023-09-18 - URL: https://ultimasolution.pl/programowanie-wspolbiezne-c-na-linux-przyklady/ - Categories: c - Tags: api, c++, linux Przykładowe zadania z programowania współbieżnego na systemie Linux Napisz program, który pokazuje, które atrybuty procesu macierzystego są dziedziczone przez proces potomny uruchomiony za pomocą funkcji fork, które zaś otrzymują nową wartość. Napisz program, który pokazuje, które atrybuty procesu są zachowane przez proces po wykonaniu funkcji exec. Napisz program, który wyświetla identyfikator procesu (PID) i nazwę związanego z nim polecenia dla wszystkich procesów uruchomionych przez użytkownika podanego w wierszu wywołania programu. /** * Uzupełnij program shell z o „ręczną” obsługę potoków. * ---------------------------------------------------- * Napisz program, który zbiera komunikaty od wielu programów i wyświetla je na ekranie. Do komunikacji użyj potoku nazwanego. * * Wskazówka: Utwórz program rdfifo, którego zadaniem jest utworzenie kolejki FIFO i czytanie z niej danych. * Utwórz program wrfifo, który otwiera kolejkę FIFO tylko do zapisu i wpisuje do niej dane (np. swoj pid i czas). * * Q: W jaki sposób przekażesz wspólną nazwę kolejki FIFO do tych programów? * A: przez zmienną statyczą * * Q: W jaki sposób zapewnić działanie programu zbierającego komunikaty również wtedy, kiedy nie ma programu piszącego do łącza? * A: przez proces pętli nieskończonej ze sleep * * Q: Jak zapewnić to, że komunikaty pochodzące od różnych programów wyświetlane są w całości, tzn. nie są rozdzielane komunikatami od innych programów? * A: flush? (do sprawdzenia). * */ Wskazówka: informacje te można uzyskać przeglądając katalog /proc z plików (interesują nas katalogi, których właścicielem jest dany użytkownik) i pliki /proc/PID/status Sources Compiler and enviroment - https://eclipse. org/cdt/downloads. php Eclipse Luna CDT http://help.... --- - Published: 2016-01-11 - Modified: 2020-08-29 - URL: https://ultimasolution.pl/narzedzia-to-projektowania-baz-danych/ - Categories: tool - Tags: designer, php, plsql, project, sql, uml GNU-GPL OpenSystemArchitect http://www. codebydesign. com/ Power*Architect http://code. google. com/p/power-architect/ Druid http://druid. sourceforge. net/ ERW http://erw. dsi. unimi. it/ Dia http://live. gnome. org/Dia XML to DDL (python scripts) http://xml2ddl. berlios. de/ Graphiz - I believe I've read of people using it to reverse engineer from DDL http://graphviz. org/ Multiple versions/licenses (each has a "free" and a "not-free" version) DBVisualizer Toad Not-free Microsoft Visio - (If you already have it, it does work quite well) DataStudio - 30 day trial http://www. aquafold. com DBWrench - 30 day trial http://www. dbwrench. com/ ER diagram tool http://druid. sf. net/ http://schemaspy. sourceforge. net/ http://uml. sourceforge. net/index. php --- - Published: 2015-12-30 - Modified: 2023-07-16 - URL: https://ultimasolution.pl/automat-komorkowy-w-c-cellular-automaton-ca-in-c/ - Categories: c - Tags: c++, html, life, project Cellular automata and Moore neighborhood Cellular automaton (CA) is by definition a periodic grid of cells, where in each cell sits a finite automaton, and a set of (identical) rules for every such automaton describing to which state it switches on a next moment of discrete time ti+1, depending of its own state and states of all its neighbors on a current moment of time ti. For now, we will be interested in 2d, rectangular CA, and a neighborhood which includes 8 neighbors of the cell. This is what is called the Moore neighborhood, because it was invented by Edward Moore. Rules Brain http://zvold. blogspot. com/2010/01/conways-life-and-brians-brain-cellular. html Each cell has three possible states: passive, active, and semi-active. If a cell is active, it goes to semi-active state on the next step If a cell is semi-active, it becomes passive on the next step If a cell is passive, it becomes active if and only if it has exactly 2 active neighbors Materials http://meil. pw. edu. pl/za/ZA/Dydaktyka/Informatyka-1 https://en. wikipedia. org/wiki/Cellular_automaton GitHub git clone git@bitbucket. org:snippets/karol-preiskorn/E8e4L/brians-brain. git Source /** * Brian's Brain * * Rules: * ------- * Each cell has three possible states: passive, active, and semi-active. * If a cell is active, it goes to semi-active state on the next step * If a cell is semi-active, it becomes passive on the next step * If a cell is passive, it becomes active if and only if it has exactly 2 active neighbors * **/ #include #include #include #include #include... --- - Published: 2015-12-25 - Modified: 2020-08-21 - URL: https://ultimasolution.pl/interfaces-and-functional-interface-in-java-tutorial/ - Categories: java - Tags: GUI, uml This simple sumarize informationa about interfances and funcional interfnces in Java. Interfances An interface is a reference type in Java. It is similar to class. It is a collection of abstract methods. A class implements an interface, thereby inheriting the abstract methods of the interface. Along with abstract methods, an interface may also contain constants, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods. Writing an interface is similar to writing a class. But a class describes the attributes and behaviors of an object. And an interface contains behaviors that a class implements. Unless the class that implements the interface is abstract, all the methods of the interface need to be defined in the class. An interface is similar to a class in the following ways − An interface can contain any number of methods. An interface is written in a file with a . java extension, with the name of the interface matching the name of the file. The byte code of an interface appears in a . class file. Interfaces appear in packages, and their corresponding bytecode file must be in a directory structure that matches the package name. However, an interface is different from a class in several ways, including − You cannot instantiate an interface. An interface does not contain any constructors. All of the methods in an interface are abstract. An interface cannot contain instance fields. The only fields that can appear in an interface must be... --- - Published: 2015-12-12 - Modified: 2023-03-08 - URL: https://ultimasolution.pl/java-przyklad-z-konstruktorami/ - Categories: java - Tags: exercises, ide Przykład na dedykowany konstruktor Zadeklaruj klasę Sloik zawierającą pole Dzem dzem, dedykowany konstruktor inicjujący wszystkie zadeklarowane pola i metody: otworz zamknij czyOtwarty Następnie utwórz obiekt klasy Sloik i napełnij go wybranym rodzajem dżemu, operacje powtórz dla wszystkich rodzajów dżemów. Uwaga: nakładanie dżemu do zamkniętego słoika lub pozostawienie słoika nie zamkniętego może prowadzić do zepsucia się produktu! Oryginał zadnia Zadeklaruj klasę Dzem zawierająca prywatne pola: String smak, double waga Utwórz konstruktory przyjmujące jako parametry zmienne: (String smak, double waga), (double waga), (String smak). Dostarczone parametry konstruktorów powinny znacjonalizować pola klasy. W przypadku gdy konstruktor nie dostarcza niezbędnego parametru należny przyjąć, ze pole smak musi przyjąć wartość “No name”, natomiast waga – 100. 0. Przedstaw wykorzystanie wszystkich konstruktorów tworząc obiekty reprezentujące co najmniej trzy rodzaje dżemów. Uwaga: należny założyć, ze tylko konstruktor z dwoma parametrami możne przypisać wartości polom klasy. Zadanie trochę zmodyfikowane Zadeklaruj klasę Sloik zawierająca pole Dzem dzem (lub konstruktor klasy pochodnej), dedykowany konstruktor inicjujący wszystkie zadeklarowane pola i metody: otworz zamknij czyOtwarty napełnijSloik Wymagane pola: klasa Dzem Następnie utwórz obiekt klasy Sloik i napełnij go wybranym rodzajem Dzem. Resources czyli od czego zacząć https://docs. oracle. com/javase/tutorial/java/javaOO/constructors. html o konstruktorach na stronie Oracle Java. https://docs. oracle. com/javase/tutorial/java/javaOO/arguments. html argumenty w konstruktorach. class Programming { //constructor method Programming { System. out. println("Constructor method called. "); } public static void main(String args) { Programming object = new Programming; // Creating an object } } class Language { String name; Language { System. out. println("Constructor method called. "); } Language(String t) { name... --- - Published: 2015-11-18 - Modified: 2024-09-07 - URL: https://ultimasolution.pl/oracle-plsql-bulk-processing-with-bulk-collect-and-forall/ - Categories: plsql - Tags: BULK COLLECT, data, forall, oracle, plsql, sql Bulk Processing techniques in Oracle PL/SQL can significantly improve the performance of SQL operations by minimizing context switches between the PL/SQL and SQL engines. The two primary methods for achieving this are: BULK COLLECT: Retrieves multiple rows with a single fetch, improving data retrieval speed. FORALL: Allows for efficient INSERT, UPDATE, and DELETE operations using collections to affect multiple rows at once. Bulk Processing with BULK COLLECT and FORALL· BULK COLLECT: SELECT statements that retrieve multiple rows with a single fetch, improving the speed of data retrieval· FORALL: INSERTs, UPDATEs, and DELETEs that use collections to change multiple rows of data very quicklyPL/SQL is so tightly integrated with the SQL language, you might be wondering why special features would be needed to improve the performance of SQL statements inside PL/SQL. The explanation has everything to do with how the runtime engines for both PL/SQL and SQL communicate with each other—through a context switch.   Source: Mukesh K Suthar on Oracle PL/SQL: Bulk Processing with BULK COLLECT and FORALL BULK COLLECT Bulk binds can improve the performance when loading collections from a queries. The BULK COLLECT INTO construct binds the output of the query to the collection. To test this create the following table. CREATE TABLE bulk_collect_test AS SELECT owner, object_name, object_id FROM all_objects; The following code compares the time taken to populate a collection manually and using a bulk bind. SET SERVEROUTPUT ON DECLARE TYPE t_bulk_collect_test_tab IS TABLE OF bulk_collect_test%ROWTYPE; l_tab t_bulk_collect_test_tab := t_bulk_collect_test_tab; l_start NUMBER; BEGIN -- Time a regular population. l_start := DBMS_UTILITY. get_time; FOR cur_rec IN (SELECT * FROM bulk_collect_test) LOOP l_tab. extend; l_tab(l_tab. last) := cur_rec; END LOOP; DBMS_OUTPUT. put_line('Regular (' || l_tab. count || ' rows): ' || (DBMS_UTILITY. get_time - l_start)); -- Time bulk population. l_start := DBMS_UTILITY. get_time; SELECT * BULK COLLECT INTO l_tab FROM bulk_collect_test; DBMS_OUTPUT. put_line('Bulk (' || l_tab. count || ' rows):... --- - Published: 2015-06-13 - Modified: 2023-10-14 - URL: https://ultimasolution.pl/change-color-scheme-for-gnome-terminal-vim-gedit/ - Categories: tool - Tags: bash, git, linux, terminal Solarized: A Must Have Color Scheme For Gnome Terminal, Vim, Gedit And Lots More ~ Ubuntu / Linux blog cd wget --no-check-certificate https://raw. github. com/seebi/dircolors-solarized/master/dircolors. ansi-dark mv dircolors. ansi-dark . dircolors eval `dircolors ~/. dircolors` sudo apt-get install git-core git clone https://github. com/sigurdga/gnome-terminal-colors-solarized. git cd gnome-terminal-colors-solarized Solarized Dark Additional Instructions for 256-color Solarized Themes, e. g. "256dark" For the 256-color Solarized dircolors themes, such as "256dark", you need a 256-color terminal (e. g. gnome-terminal or urxvt) and a correct TERM variable, e. g. : export TERM=xterm-256color # for common 256 color terminals (e. g. gnome-terminal) export TERM=screen-256color # for a tmux -2 session (also for screen) export TERM=rxvt-unicode-256color # for a colorful rxvt unicode session Goth https://github. com/Mayccoll/Gogh sudo apt install dconf-cli uuid-runtime wget sudo apt-get install dconf-cli uuid-runtime Links Want Solarized color schemes for other applications? Check out the links below: Homepage:http://ethanschoonover. com/solarized Main git repository: vim, emacs, mutt, gimp palette, Xresources: https://github. com/altercation/solarized Siguradga's fork: gnome-terminal: https://github. com/sigurdga/gnome-terminal-colors-solarized Seebi's fork: dircolors, tmux: https://github. com/seebi/dircolors-solarized Lu Wang's fork: Guake: https://github. com/coolwanglu/guake-colors-solarized https://askubuntu. com/questions/957257/how-to-set-the-gnome-terminal-color-scheme-to-solarized-dark-via-commandline Źródło: Solarized: A Must Have Color Scheme For Gnome Terminal, Vim, Gedit And Lots More ~ Web Upd8: Ubuntu / Linux blog --- - Published: 2015-06-11 - Modified: 2025-05-01 - URL: https://ultimasolution.pl/conversion-mp4-to-mp3-in-linux/ - Categories: linux - Tags: bash, linux, mp3 A simple script to convert mp4 to mp3 on Linux. There are two official ways of installing FFmpeg on Ubuntu: from the Ubuntu repo (v7. x) and from the snap (v4. x). Depending on your needs, you should choose the most appropriate method for you. Requirements install: sudo apt update sudo apt-get install ffmpeg Let us verify whether the installation was successful. First, test the FFmpeg version via the following command: ffmpeg -v Do not forget to check the available encoders and decoders. Do so by entering the following command: ffmpeg -encoders ffmpeg -decoders The script that converts * . mp4 files to mp3 might look like this: ffmpeg -i video. mp4 -f mp3 -ab 192000 -vn music. mp3 script version that converts all files from the directory: #! /bin/bash for i in *. mp4; do ffmpeg -i "$i" -vn -acodec libmp3lame -ac 2 -qscale:a 4 -ar 48000 "`basename "$i" . mp4`. mp3"; done; For ffmpeg with Constant Bitrate Encoding (CBR): ffmpeg -i video. mp4 -vn -acodec libmp3lame -ac 2 -ab 160k -ar 48000 audio. mp3 Variable Bitrate Encoding (VBR) Example to encode VBR mp3 audio with ffmpeg using the libmp3lame library: ffmpeg -i input. wav -codec:a libmp3lame -qscale:a 2 output. mp3 ffmpeg -i video. mp4 -vn -acodec libmp3lame -ac 2 -qscale:a 4 -ar 48000 audio. mp3 Sources and links https://trac. ffmpeg. org/wiki/Encode/MP3 http://wiki. hydrogenaud. io/index. php? title=LAME#Recommended_encoder_settings https://trac. ffmpeg. org/wiki/Encode/MP3 how to use the external libmp3lame encoding library within ffmpeg to create MP3 audio files --- - Published: 2015-04-05 - Modified: 2023-02-04 - URL: https://ultimasolution.pl/projekt-pfirma-com-pl/ - Categories: wordpress - Tags: css, html, php, project, webpage Strona biura tłumaczeń przysięgłych "Porządna Firma": http://pfirma. com. pl Tłumaczenia przysięgłe język angielski. Dobra jakość przy dobrej cenie. Terminowa realizacja prac. Jasne i precyzyjne tłumaczenie. Projekt graficzny i wykonanie w PHP/HTML/CSS. --- - Published: 2015-04-04 - Modified: 2023-02-04 - URL: https://ultimasolution.pl/projekt-asokamission-in/ - Categories: wordpress - Tags: project, webpage asokamission. in Projekt zabezpieczenia serwisu przed spamem. Problem rozwiązań instalując i konfigurując dodatkowe modułu Drupal: 1. CAPTACHA w celu zabezpieczenia przed skanowaniem haseł użytkowników oraz komentarzami spambotów. 2. SPAMBOT w celu pozbycia się spam-botów z rejestrowania się na sajcie. Konfiguracja i utrzymanie serwisu. Wykonanie w Drupal 6. --- - Published: 2015-04-04 - Modified: 2023-10-18 - URL: https://ultimasolution.pl/projekty-fundacji-nyatri-org/ - Categories: wordpress Celem Fundacji jest organizacja wszechstronnej działalności w zakresie pomocy uchodźcom tybetańskim, ochrony zdrowia oraz ratowania życia, w tym wspierania i prowadzenia inicjatyw o charakterze zdrowotnym, edukacyjnym oraz charytatywnym, mającej na celu zachowanie przy życiu narodu tybetańskiego wraz z jego unikalnym w świecie dziedzictwem kulturowym. Celem Fundacji jest organizacja wszechstronnej działalności w zakresie pomocy uchodźcom tybetańskim, ochrony zdrowia oraz ratowania życia, w tym wspierania i prowadzenia inicjatyw o charakterze zdrowotnym, edukacyjnym oraz charytatywnym, mającej na celu zachowanie przy życiu narodu tybetańskiego wraz z jego unikalnym w świecie dziedzictwem kulturowym. Funkcje Członek Zarządu Fundacji Nyatri 200x-20xx Członek Rady Fundacji Nyatri maj 2015 - obecnie Ulotka Fundacji Nyatrii Projekty Administracja stroną informatyczną projektów fundacji. Upgrade modułów i Joomla/WordPress. Workflow i formularz zgłoszeniowy Adopcji Serca. Promocja i integracja strony w mediach społecznościowych (Facebook, Google+, LinkedIn) Logo fundacji Nyatri (2018) --- - Published: 2015-04-04 - Modified: 2023-10-18 - URL: https://ultimasolution.pl/how-to-write-sap-abap-web-service-and-consume-it-in-php/ - Categories: abap, php - Tags: php Last time i spend lot of time to develop SAP ES webservices connected to PHP. Why PHP? Because PHP was fastest method for me. Without starting do it in Java/Tomcat. But now i thing Tomcat will be better... I want o share some information about my work with SAP webservices. At the beginning most time I spent on configure SAP basis problems with web-services. Roles setting ect. Basic information about SAP and PHP configuration SAP ABAP - development Destination typu „G” InAcT (SM59) (otwarty na konkretny skrypt PHP) Embedded pakiet ZIPSZWEBSERVICES Function RFC (external) ZWEBSERV_INACT Logs 'BAL_LOG_MSG_ADD' + view data by IW33 (Tr. SLG1) Enterprise Serwis: Z_WEBSERV_PM3 SAP AS Define webserwis SAP WSLD How it works in SAP? Simple JOB fill public table named: ZWEBSRV_PM in procedure Z_JOB_FILL_ZWEBSRV_PM (call with variant Security Communication by HTTPS (simple but effective in corp. environment) InAcT – server Windows x64 2012 R1 (planned migrate do Linux) Server Apache 2. 4/PHP 5. 3 (+biblioteka SOAP) Skrypt PHP index. php Windows job scheduler call PHP http://SOAP/index. php Basic information about run and start web services in SAP SAP Note 1300943 Transport web-services SAP Note (need password) no. 1300943 PHP implementation Apache 2. 4/PHP 5. 6 (now 7) Enable SOAP, XML in php. ini config file The SoapClient class provides a client for » SOAP 1. 1, » SOAP 1. 2 servers à extension=php_soap. dll Przykład kodu wywołania SOAP AS SAP z poziomu PHP $WSDL = "http://xxx. pl:8000/sap/bc/srt/wsdl/bndg_52B09DB8E7B611E0E10080000A150CAA/soap11/wsdl11/allinone/standard/document? sap-client=030"; $SOAP_CLIENT_PARAM = array('login' => 'WEBSERVICES', 'password' => *********',... --- ---