Roman Serebrak
Winning proposal- Projects 44
- Rating -
- Rating 1 816
Budget: 3000 UAH Deadline: 5 days
As I see:
1 . You need to purchase hosting with MySQL or MsSQL.
2nd On the host, create a database where records with Prozorro will be recorded by tender
2nd Create a background script that will be scheduled to launch and upload new records to the BD.
Approximately so I see.
Budget: 1000 UAH Deadline: 1 day
Good day . You can try a few options to get data.
I think it's best to download the data into any database and from where to get the data in the power BI.
I can write a script on PHP that will download the required data in the BD and then already pick them in the power BI
Price indicated for 1 working day.
Proposals are currently absent
-
Mykola Y. 29 June 2022Вы хотите с помощью Power BI собрать данные по тендерам и сделать из них базу данных? Чтобы потом что? Хранить её или анализировать?
-
Mykola Y. 29 June 2022По описания задачи выглядит как: получить данные из базы, которую сначала нужно заполнить. То есть первый этап - вытянуть все, а второй этап - уже фильтровать по заданным вами критериям и выдавать результат.
Теоритически можно с помощью динамических фильтров попытаться решить, но именно чтоб их передавать из Power BI через API в Prozorro не представляю как можно, послушал бы и сам такое, если кто возьмется.
-
Oleksandra Karpenko
29 June 2022
Если вы знаете как подключить MS POWER BI к базе полностью (учитывая что я на ноутбуке работаю), меня это тоже устроит. Если тендера будут в том виде как пример из одного, я уже смогу фильтровать что мне надо.
-
Mykola Y. 29 June 2022Еще раз спрошу, - по первой ссылке мы можем получить списки тендеров, вам нужны ведь они все? Или какое то конечное количество?
И далее имея этот список тендеров, вы хотите задавать параметры Дата и Заказчик и уже получать полные описание тендеров только по этим двум фильтрам?
-
Oleksandra Karpenko
29 June 2022
Первая ссылка - для меня бесполезна. Это просто перечень тендеров без данных по самим тендерам.
В итоге я хочу иметь таблицу с тендерами (и данными по ним) как по ссылке 3 (https://public.api.openprocurement.org/api/2.3/tenders/c52d2426c4fc43c79764187c23279aff). Если это будет вся база - мне кажется это многовато для простого компьютера (может я и не права, и компьютер в состоянии это потянуть). Поэтому хочу понимать как можно заранее этот список отфильтровать на примере двух параметров.
-
Yevhenii V. 29 June 2022Александра, я с прозорро давно имею дело, есть собранная информация за определенный период. по каким критериям вам нужны тендеры и какая инфа вам нужна? вполне возможно, что у меня уже есть готовая база..
-
Oleksandra Karpenko
29 June 2022
Мне важно отслеживать изменения. Я раньше работала через сервис zakupki.prom.ua. У них по критериям формируются excel файлы, которые я подключала к Power BI. Но, во-первых, сложно обновлять, во-вторых, они иногда меняют структуру отчетов, и моя модель данных постоянно слетает. Поэтому я хочу найти способ подключаться к базе. Мне это сложновато, так как я чисто с аналитикой работаю.
-
Mykola Y. 29 June 2022Александра, пробежался ещё раз по документации API "Отримання інформації про закупівлі" и совершенно не нашел там способов передать в запрос к их базе те параметры-фильтры, которые Вы хотите реализовать "на лету". Можно конечно обратиться за подсказкой к разработчикам, но я не думаю что они бы их скрывали в документации, если бы это было реализовано. Но я могу ошибаться. Возможно есть способ это сделать.
Но скорее всего (и правильнее) было бы реализовать задачу в виде создания у вас локальной копии базы с постоянной синхронизацией с источником, и об этом пишут сами разработчики, а уже на следующем этапе естественно можно из локальной базы брать запросами через Power Query только нужную вам для текущего отчета информацию с необходимыми фильтрами. Над этим можно подумать и проработать этот вариант.
-
Oleksandra Karpenko
29 June 2022
Спасибо, я готова рассматривать все варианты. Вы бы взялись за это?
-
Mykola Y. 29 June 2022Думаю, что это можно реализовать.
Но давайте завтра ещё доработаю вариант с запросом с фильтрами к первоисточнику
-
Oleksandra Karpenko
29 June 2022
Жду тогда вердикт по обращению к первоисточнику) а дальше будем смотреть. Спасибо
-
Yevhenii V. 29 June 2022всего 14 493 734 тендера на данный момент... это по поводу локальной копии...
-
Oleksandra Karpenko
29 June 2022
Подозреваю что это много) Но удобнее может копию на удаленном сервисе сделать? Чтобы я могла с любого компьютера обращаться
-
Mykola Y. 30 June 2022Можно и так). Но можно попробовать по датам все таки забрать кусок, порциями по 100. Если вам не все исторические даты нужны
-
Oleksandra Karpenko
30 June 2022
Там можно лимит и 1000, и подозреваю больше задать. https://public.api.openprocurement.org/api/2.3/tenders?limit=1000 Но опять же, это просто перечень тендеров, без данных по ним.
-
Mykola Y. 30 June 20221000 - это максимум, уже перепробовали)
И начинает оно отдавать с самых старых записей, аж с 2015 года. То есть чтобы добраться до самых новых - надо пройти всю базу.
Current freelance projects in the category Databases & SQL
There is an active production platform with a catalog and automatic updates of external offers and prices. Stack: — Node.js / TypeScript; — PostgreSQL; — existing price refresh service and cron; — separate ready Python module for validation and selection of offers; — staging and production. It is necessary to make targeted improvements to the existing price refresh pipeline without completely rewriting the backend. MANDATORY SCOPE 1. Integration of the Python module — The Python module remains a separate component; — returns a structured result: offers, selected offer, statuses, and risk flags; — Node.js validates the result and performs a write to the database; — provide for error handling and partial/failed runs; — the legacy pipeline is not turned off until QA is completed. 2. Launch refresh by list Add launch: — by one slug/id; — by the provided list of slug/id. Assume CLI or existing service API. A new user interface is not required. 3. Shadow Mode New results must be recorded separately and not affect production until QA. Shadow fields required: — price; — selected offer ID; — direct URL; — offer status; — risk/QA flags; — checkedAt; — engineVersion. 4. Expanding the existing offers table Add: — source; — external_offer_id; — last_seen_at; — last_checked_at; — engine_version; — risk flags or storage in existing JSON; — unique constraint to protect against duplicates. It is not required to create a new parallel offer system if the existing table can be safely expanded. 5. UPSERT, STALE, and DB transaction Replace the current DELETE → CREATE scheme: — UPSERT existing and new offers; — offers missing in the full successful snapshot are translated to STALE; — in case of API error, partial result, or incomplete snapshot, active offers should not become STALE; — updating offers, selected offer metadata, and shadow fields for one model is performed within one DB transaction; — in case of an error, a full rollback is performed. 6. Canonical-safe refresh Price refresh should not change: — brand; — reference; — model; — collection; — name/title; — slug; — descriptions; — images; — SEO fields. Only offer, price, and shadow data are updated. 7. Preserving current cron logic Preserve: — existing cron; — rolling batches; — cooldown; — checking PRICE_REFRESH_MIN_DAYS before calling the external API; — legacy production pipeline until Shadow QA is completed. 8. Audit output One option is sufficient: — shadow columns in the existing admin table; or — CSV export. Minimum data: — model/reference; — production price; — shadow price; — delta; — production/shadow URL; — status; — risk flags; — checkedAt; — engineVersion. A new complex dashboard is not required. 9. Staging and QA — DB migrations; — staging deployment; — smoke test on 5 provided models; — then Shadow Mode on approximately 50 models; — fixing technical errors identified during these runs; — brief documentation of the Python → Node.js contract and rollback procedure. OPTIONALLY ASSESS SEPARATELY Simple technical promotion without a new UI: — promotion of one model by slug; — promotion of a list of slugs; — transferring confirmed shadow values to production; — technical check after rollout. RESULT — Pull Request; — DB migrations; — working integration Python → Node.js; — Shadow Mode; — UPSERT, STALE, and transactional update; — launch by slug/id; — staging deployment; — smoke-test results; — brief documentation; — at least 7 days of bug fixes for the implemented scope after acceptance. IN RESPONSE, INDICATE 1. Fixed price for the mandatory scope. 2. Separate cost for the promotion mechanism. 3. Timeline. 4. Hourly estimate. 5. When you are ready to start. 6. Experience with PostgreSQL transactions, migrations, and ingestion pipelines. 7. What questions need to be clarified before starting. 8. Whether staging, QA, migrations, and bug-fix period are included. Template responses without specific estimates will not be considered. Access to production is not provided at the first stage. Work begins with limited code review and staging.
A centralized server system for collecting and storing data from Planfix, 1C, Meta Ads, and Google Ads is needed, as well as a web dashboard for displaying and analyzing this data. All data, change history, calculations, and aggregated metrics must be stored exclusively in the server database. The dashboard should not store or duplicate business data. It must retrieve the necessary information from the server database via API according to user requests and display it in the form of KPIs, charts, tables, and detailed reports.
We are looking for support for a project based on Yii , we need to make edits and improvements to the database, there is partially a connection with the previous contractor .....................
It is necessary to migrate the database from CRM G-PLUS to MyChatBot Database volume - 26 thousand leads 2 funnels - Call center and Sales department with their own funnels Lead cards (besides name and number) have many different fields Leads also have voice recordings of calls. These also need to be transferred I expect an approximate amount and implementation timeline from the candidate
Create a dashboard for monitoring and analyzing the performance of the company's location network (branches) in Google Business Profile (GBP) through the official Google Business Profile API. Process via a script based on Google Apps Script (link to Google Sheets). Record data in Google Sheets (which serves as a database for Looker Studio). Update: Daily (with an indication of the last update date). Create a Google Cloud service account. The script runs once a day (trigger at 03:00 AM) and sends a request to the GBP API. It retrieves metrics for the previous day for each location (locationId). Records data in a flat format (row = unique combination of Date + Branch ID + Metrics). Key Performance Indicator CardsCard NameGBP MetricDynamic FormatProfile ViewsImpressions (Search + Maps)Percentage %, Sparkline (blue)CallsLocal Services Phone CallsPercentage %, Sparkline (green)Website ClicksWebsite ClicksPercentage %, Sparkline (purple)Direction RequestsDirection RequestsPercentage %, Sparkline (orange)Average RatingAverage Review RatingAbsolute change (e.g., +0.1), Sparkline (yellow)New ReviewsNew Reviews CountPercentage %, Sparkline (turquoise)