Exchange with R3 via OData

In order to get info using OData, we need to download and build
– https://www.odata.org/libraries/#cpp –>> https://github.com/OData/odatacpp-client
and
– CPPREST library – https://github.com/Microsoft/cpprestsdk (known as Casablanca) – vcpkg shows v2.1.19

ODataCpp-Client serves as client and client side proxy generation (code gen) aspects of OData.

#pragma comment(lib, “odata_cleint.vs12d.lib”)
#pragma comment(lib, “cpprest143d_2_1”)
or

UPD: I have packed newest cpprestsdk.2.1.19 into nuget package (but as cpprestsdk.2.1.0.nuget & v143) ‘cause odatacpp required it.
The archive also contains cpprest143d_2_1_win32.lib & cpprest143d_2_1_x64.lib (MSVC v143 — VS2022 x64/x86)
Download: cpprestsdk.2.1.19.nupkg.cab

Added multipart/mixed; boundary=batch header.
Requested URI: /sap/opu/odata/sap/yinfosatz/$batch

no: /sap/opu/odata/sap/mein-dienst/$record

(test variant: /sap/opu/odata/sap/yinfosatz/recordSet(210, “TEST”))

UPD:

Даша и Маша пропалывают грядку за 15 минут

Две девочки, Маша и Даша, пропалывают грядки. Известно, что Маша, работая одна, пропалывает грядку за 25 минут. А если Маша и Даша работают вместе, то пропалывают грядку за 15 минут. За сколько минут Даша одна прополет грядку?
//////////////////////////////////////////////////

Это аналог задачи на скорость и расстояние, где расстояние – это длина грядки, а скорость – это доля длины грядки, которая пропалывается в минуту.

Задачи на работу делятся на два типа:
– задачи, в которых выполняется раздельная работа – эти задачи решаются аналогично задачам на движение.
– задачи на совместную работу.

Обозначим длину грядки за 1.
Пусть время прополки грядки Дашей составляет X минут. Тогда скорость работы Даши составляет 1/X грядки в минуту.

По условию Маша пропалывает грядку за 25 минут. Тогда скорость работы Маши составляет 1/25 грядки в минуту.
Совместная скорость работы двух девочек равна 1/X + 1/25
Получаем уравнение: 1/X + 1/25 = 1/15
Перенесем неизвестное влево, а числа вправо: 1/X = 1/15 – 1/25
1/15 – 1/25 = 5/75 – 3/75 = 2/75

\[ \frac{1}{X}=\frac{2}{75}=\frac{1}{37,5} \]

откуда X = 37.5 минут
Ответ: Даша одна прополет грядку 37 минут и 30 секунд

Effective Modern C++ by Scott Meyers

»If you’re an experienced C++ programmer and are anything like me, you initially approached C++11 thinking, “Yes, yes, I get it. It’s C++, only more so.” But as you learned more, you were surprised by the scope of the changes. auto declarations, range-based for loops, lambda expressions, and rvalue references change the face of C++, to say nothing of the new concurrency features. And then there are the idiomatic changes. 0 and typedefs are out, nullptr and alias declarations are in. Enums should now be scoped. Smart pointers are now preferable to built-in ones. Moving objects is normally better than copying them.«

– Effective Modern C++ by Scott Meyers

Уююки

Two functions to encode and decode UUE (Uuencode)

Установка FWBuilder 5.0.1.3592-1 на CentOS 5.8


Для установки Firewall Builder выполняем следующее:

– Устанавливаем QT4:

Глянем, какие пакеты предоставляют необходимую зависимость:

Собираем бинарник rpm из сырцов:

Так как у меня CentOS без иксов, установим xming, чтобы Windows служила диспелеем (x-server’ом) и:

И запускаем fwbuilder. Не забываем отметить один интерфейс как “management interface”.
Чтобы сохранить правила iptables:

Для отладки и поиска дропнутых соединений: cat /var/log/messages | grep IP_ADDRESS_OR_SMTH
Команда
/etc/init.d/iptables save
сохранит правила в файл /etc/sysconfig/iptables (которые будут восстановлены при загрузке системы с помощью iptables-restore из /etc/init.d/iptables).

P.S. Используйте IP-ranges в правилах вместо имён адаптеров.

Arduino җырлары: Шуралар Җөмһүриятләр Берлегенең гимны

Простыня:
Read the rest of this article

winralter

Небольшая портативная программа, которая создана стать заменой стандартной функции Windows “Выполнить” – но с бОльшим количеством возможностей.
winralter имеет очень маленький размер, лог команд (история) ведется в ini-файл.

Alternative to standard Windows Run-Dialog
Download: winralter_v1.01.cab

winralter is a small, portable windows program and created as an alternative to the standard Windows Run-Dialog. In this program you will find a number of improvements e.g. the function run as administrator

Features:
– Very small program
– Arbitrary Windows shortcut
– Execute programs via the command line
– Run commands as administrator
– Supports removing commands from the history (Ctrl+Shift+Del)
– Portable

Sources:
github/winralter

RFC Server (С++ classes)

Добавляем в свойства компилятора -DSAPwithUNICODE а в свойства линковщика lib\sapnwrfc.lib lib\libsapucum.lib

sapnwrfc.ini:

github.com/rfc-server
Read the rest of this article

Компиляция NW RFC SDK, win7+msvs 2010 / 2022+win10

SM59:

Распаковал в одну папку NW RFC SDK 32-bit и samples.cab оттуда же.
В качестве рабочей среды у меня MSVS 2010 и Win7x86.
В студии: идём Файл -> Создать проект из существующего кода и указываем распаковыванную папку
Свойства проекта – Выбираем Плафторму Win32

в следующем окне (“Debug configuration settings”) оставляем все поля пустыми.

Свойства для nmake:

Параметры в файле

Вместо функций из libsapucum.dll (sapuc.h) можно использовать стандартные w-функции Microsoft (wchar.h). В Windows тип данных “SAP_UC” эквивалентен “wchar_t”. Например, вместо printfU() можно использовать wprintf(), а вместо getcU() – _getws().

Запускаем и нажимаем в SM59 тест соединения:

UPD 2022: проект компилируется в msvs 2022 + win10

Capture audio loopback (C Builder)

implib basswasapi.lib
Recording by BASS_WASAPI_Init every 0.5 second

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert