[C言語]PCでgccコンパイル環境構築から実行までの流れ

PCで環境構築から実行までの流れ

gccコンパイラダウンロード

https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/8.1.0/threads-posix/sjlj/x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z/download

ダウンロードしたのを展開します。

システム環境変数Pathに、展開先が以下のフォルダの場合、以下のように追加します。

C:\Users\PC\Downloads\x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0\mingw64\bin

コマンドプロンプトでgccバージョン確認します。

gcc –version

c言語ファイルを作成します。

ファイル名:test.c

#include <stdio.h>
 
int main(void) {
    char str1[12] = "Hello World";
    char str2[10] = "Yokkaichi";
    printf("%s  ", str1);
    printf("%s\n", str2);
 
    return 0;
}

test.c保存先へ移動します。例)保存先が、c:\gcc\test.cの場合

gccでコンパイルします。

実行ファイルを実行します。

[Windows]システム環境変数の設定ができなくなった場合の対処

システム環境変数の設定ができなくなった場合の対処

PowerShell管理者で Start C:\Windows\system32\rundll32.exe sysdm.cpl, EditEnvironmentVariables と入力

手順

  1. スタートメニューを右クリックして、Powershell(管理者)を呼び出す。
  2. コマンドで、コントロールパネルの環境変数の設定 を実行する
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6

PS C:\WINDOWS\system32> Start C:\Windows\system32\rundll32.exe sysdm.cpl, EditEnvironmentVariables

[Salesforce]Salesforceのディスク容量の計算

Salesforceのディスク容量の計算

組織のエディションとユーザライセンスの数によってディスク容量は決まります。

計算式は「組織のエディションによって決まる固定ストレージ」+「ユーザライセンス数にして比例して追加されるストレージ」です。

データストレージはオブジェクトのレコードを格納する容量です。

Salesforceでは一部のオブジェクトを除いて1レコード2KBです。

データストレージの容量と組織で使用を想定しているレコード数が分かれば、容量が十分かどうかを確認することができます。

ファイルストレージは関連ファイルなどにアップロードするファイルを格納する容量です。

ファイルストレージ容量と組織で扱うファイル数・サイズが分かれば、容量が十分かどうかを確認することができます。

[Salesforce]Lightning Web ComponentからApex呼び出し方法

Lightning Web ComponentでApex呼び出し方法

■LWCから呼び出せるApexメソッド

条件

  @AuraEnabledがついていること

  staticであること

  publicもしくはglobalであること

例)

Apexクラス作成します。

testController

public with sharing class testController {
    @AuraEnabled
    public static List<test__c> getRecord( String str ){
        return [
                SELECT
                 Id,
                 Name
                FROM test__c
                Where Name = str
            ];
    }
}

■LWCからApex呼び出し

・Javascript

testLwc.js

import { ShowToastEvent } from "lightning/platformShowToastEvent";
import { CurrentPageReference } from "lightning/navigation";
import getRecord from '@salesforce/apex/testController.getRecord';

export default class testLwc extends LightningElement {

 @api recordId;

  @wire(CurrentPageReference)
  async getStateParameters(currentPageReference) {
    //ScreenActionの場合、レコード詳細画面でLightning Web コンポーネントアクション押下時のレコードID取得
    this.recordId = currentPageReference.state.recordId;
    //Apexクラスメソッド呼び出して、レコード取得
    const rows = await getRecords({ recordId: this.recordId }).catch((e) => {
      console.error(e);
   //dispatchEventメソッドでカスタムイベントをディスパッチし、親コンポーネントに伝達します。
      this.dispatchEvent(
        new ShowToastEvent({
          title: "エラーが発生しました。",
          message: e.body.message,
          variant: "error",
        })
      );
    });
  }

}

・xml

testLwc.js-meta.xml

<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>56.0</apiVersion>
    <isExposed>true</isExposed>
  <targets>
  <target>lightning__RecordAction</target>
  </targets>
  <targetConfigs>
    <targetConfig targets="lightning__RecordAction">
      <actionType>ScreenAction</actionType>
    </targetConfig>
  </targetConfigs>
</LightningComponentBundle>

・html

testLwc.html

<template>
        <lightning-quick-action-panel header="test">
            ここにモーダルコンテンツを記載する
            <div slot="footer">
                <lightning-button variant="neutral" label="ボタン1" class="slds-m-left_x-small"></lightning-button>
                <lightning-button variant="brand" label="ボタン2" class="slds-m-left_x-small"></lightning-button>
            </div>
        </lightning-quick-action-panel>
</template>

[Salesforce Recommended Plugins]Salesforce DevTools

Salesforce DevTools

https://chrome.google.com/webstore/detail/salesforce-devtools/ehgmhinnhggigkogkbhnbodhbfjgncjf

Powerful Salesforce developer tools, includes Query Editor, Fields definition, ERDs, Page Layout, and others.

Salesforce DevTools is a powerful Salesforce developer chrome extension for doing the below things :

・Quickly generate Apex code / SOQL, exporting query results to Excel file.
・Quickly access to new record page, list page and object setting page of any object.
・Quickly search object fields and check its usage.
・Display fields API name on Salesforce object detail page.
・Exporting Objects Definition to Excel file.
・Exporting Objects Fields Definition to Excel file.
・Exporting Objects Page Layout Definition to Excel file.
・Exporting Objects List View Definition to Excel file.
・Salesforce data modal (ERDs) generator.
・All Check / Select on profile edit page and field permissions edit page.
・Mass edit, mass delete, mass clone custom fields (Only Classic).